Python JSON 処理: ライブラリ活用と実践的な活用例

この記事では、Python で JSON を扱うための基本的な操作から、具体的な活用例を詳しく解説していきます。

JSON とは?

JSON (JavaScript Object Notation)は、Web開発やデータ分析など、様々な分野で広く使われているデータフォーマットです。人間が読み書きしやすく、機械が解析しやすいテキストベースのデータ形式となっています。JSONの主なメリットは以下の通りです。

  • シンプルで軽量
  • 言語非依存
  • 階層構造

jsonデータ例:

{
  "name": "山田 太郎",
  "age": 30,
  "city": "東京",
  "is_active": true,
  "hobbies": ["読書", "旅行", "プログラミング"],
  "address": {
    "street": "渋谷区",
    "zip_code": "150-0002"
  }
}

Python での JSON 操作: json ライブラリ

Python では、組み込みの json ライブラリを使って JSON データを操作できます。

JSON データの解析

json.loads() 関数で JSON 文字列を Python オブジェクトに変換します。

import json

json_string = '{"name": "山田 太郎", "age": 30}'
data = json.loads(json_string)

print(data["name"])  # 出力: 山田 太郎
print(data["age"])   # 出力: 30

Python オブジェクトの JSON 表現

json.dumps() 関数で Python オブジェクトを JSON 文字列に変換します。

import json

data = {"name": "山田 太郎", "age": 30}

json_string = json.dumps(data)

print(json_string)  # 出力: {"name": "山田 太郎", "age": 30}

ファイルからの読み込み/書き込み

json.load() と json.dump() 関数で JSON ファイルからデータを読み書きできます。

import json

# ファイルから読み込み
with open("data.json", "r") as f:
    data = json.load(f)

# データを操作...

# ファイルに書き込み
with open("data.json", "w") as f:
    json.dump(data, f)

JSON の活用例

Web API との連携

多くのAPIはJSON形式でデータを返します。PythonのrequestsライブラリでAPIにアクセスし、JSONデータを取得できます。

import requests

url = "https://api.example.com/data"
response = requests.get(url)

if response.status_code == 200:
    data = response.json()  # JSONデータをPythonオブジェクトに変換
    print(data)

設定ファイルの管理

アプリケーション設定をJSONファイルに保存し、Pythonで読み込んで使用できます。

import json

with open("config.json", "r") as f:
    config = json.load(f)

print(config["database"]["host"])
print(config["api_key"])

データのシリアライゼーション

PythonオブジェクトをJSONに変換してファイルに保存したり、データベースに格納したりできます。

import json

class User:
    def __init__(self, name, age):
        self.name = name
        self.age = age

user = User("山田 太郎", 30)

json_data = json.dumps(user.__dict__)
with open("user.json", "w") as f:
    f.write(json_data)

データ分析

pandasライブラリなどを使って、JSONデータを処理し、統計分析や可視化を行うことができます。

import pandas as pd
import json

with open("data.json", "r") as f:
    data = json.load(f)

df = pd.DataFrame(data)
print(df.head())

まとめ

JSONは、Web開発からデータ分析まで、様々な場面で活躍する汎用性の高いデータフォーマットです。この記事で紹介した内容を参考に、PythonでJSONを使いこなして、より効率的な開発やデータ分析を実現しましょう!

最近では、AWS等のクラウド環境やAI環境との親和性が高くPythonと一緒に活用されていますので、マスターしておくといいでしょう。

JSONではなく、YAMLが知りたい方はこちら。


最後に、Pythonの基礎を学びたい方は以下がおすすめです。私も持っていてたまに眺めて勉強していますものですのでぜひ購入して学習してみてください。

にいやん

出身 : 関西 居住区 : 関西 職業 : 組み込み機器エンジニア (エンジニア歴13年) 年齢 : 38歳(2022年11月現在) 最近 業務の効率化で噂もありPython言語に興味を持ち勉強しています。 そこで学んだことを記事にして皆さんとシェアさせていただければと思いブログをはじめました!! 興味ある記事があれば皆さん見ていってください!! にほんブログ村