🦁

Pythonの初心者レッスンーーJSON解析

2024/06/27に公開

シーリズの目次

Pythonの初心者レッスンをここにまとめています。
https://zenn.dev/datasciencekun/articles/319e0f4b4021c5

PythonでJSONを解析するとは、JSON形式のデータをPythonのデータ構造に変換することを指します。これを行うために、標準ライブラリであるjsonモジュールを使用します。jsonモジュールを使用すると、JSONデータを読み込んでPythonの辞書やリストに変換したり、Pythonのデータ構造をJSON形式に変換したりすることができます。

  • json.dumps(): データをエンコードします。
  • json.loads(): データをデコードします。

jsonのコーデックでは、Pythonのオリジナル型とjson型が変換されます。

PythonオブジェクトをJSONデータに変換する

以下は、Pythonのデータ型をJSON形式にエンコードする際の対応関係を示すテーブルです。

Python データ型 JSON データ型
dict オブジェクト(Object) {"key": "value"}
list, tuple 配列(Array) ["item1", "item2"]
str 文字列(String) "string"
int, float 数値(Number) 123, 123.45
True 真偽値(Boolean) true
False 真偽値(Boolean) false
None Null null

例1:Python辞書をJSON文字列に変換する

import json

# Python辞書
data = {"name": "Alice", "age": 30, "city": "Tokyo"}

# Python辞書をJSON文字列に変換
json_string = json.dumps(data)

print(json_string)
# 出力: {"name": "Alice", "age": 30, "city": "Tokyo"}

例2:Python辞書をJSONファイルに書き込む

import json

# Python辞書
data = {"name": "Alice", "age": 30, "city": "Tokyo"}

# Python辞書をJSONファイルに書き込む
with open('data.json', 'w') as file:
    json.dump(data, file)

JSONデータをPythonオブジェクトに変換する

以下は、JSONデータをPythonデータ型にデコードする際の対応関係を示すテーブルです。

JSON データ型 Python データ型
オブジェクト(Object) dict {"key": "value"}
配列(Array) list ["item1", "item2"]
文字列(String) str "string"
数値(Number) int, float 123, 123.45
真偽値(Boolean) True, False true -> True, false -> False
Null None null

例1:JSON文字列をPythonオブジェクトに変換する

import json

# JSON文字列
json_string = '{"name": "Alice", "age": 30, "city": "Tokyo"}'

# JSON文字列をPython辞書に変換
data = json.loads(json_string)

print(data)
# 出力: {'name': 'Alice', 'age': 30, 'city': 'Tokyo'}
print(data['name'])  # 出力: Alice

例2:JSONファイルをPythonオブジェクトに変換する

import json

# JSONファイルを読み込む
with open('data.json', 'r') as file:
    data = json.load(file)

print(data)

Discussion