
「JSON」ファイルは、データの保存や交換によく利用される軽量なデータ形式です。PythonでこのJSONファイルからデータを取り扱う際、Pythonの「辞書(dictionary)」形式に変換できると、とても便利に操作できます。今回は、その基本的な方法をご紹介しますね。
まずは、読み込むJSONファイルの例として data.json を用意します。
data.json の内容:
{
"name": "山田 花子",
"age": 17,
"hobbies": ["プログラミング", "読書", "お菓子作り"],
"isStudent": true
}次に、Pythonでこのファイルを読み込んで辞書形式に変換するコードです。
import json
# JSONファイルのパスを指定
file_path = 'data.json'
try:
# 'with open' を使うことで、ファイルを安全に開閉できます
with open(file_path, 'r', encoding='utf-8') as file:
# json.load() でファイルオブジェクトからJSONデータを読み込み、辞書に変換
data = json.load(file)
print("JSONデータをPythonの辞書に変換しました。")
print(f"名前: {data['name']}")
print(f"年齢: {data['age']}")
print(f"趣味: {', '.join(data['hobbies'])}")
print(f"学生かどうか: {data['isStudent']}")
print("\n変換された辞書全体:")
print(data)
except FileNotFoundError:
print(f"エラー: ファイル '{file_path}' が見つかりませんでした。")
except json.JSONDecodeError:
print(f"エラー: '{file_path}' のJSON形式が不正です。")
except Exception as e:
print(f"予期せぬエラーが発生しました: {e}")このコードを実行すると、data.json の内容がPythonの辞書として data 変数に格納され、各キーを使ってデータにアクセスできるようになります。
みーちゃんのワンポイント
Pythonには、JSONデータを扱う「json」という標準ライブラリがあります。今回使った「json.load()」はファイルオブジェクトから直接データを読み込む関数ですが、もしJSON形式のデータが既にPythonの「文字列」として存在する場合は、「json.loads()」(load ‘s’tringの略!)を使うと、文字列から辞書形式に変換できますよ!
