🐍 Python
Python json クイックリファレンス
AIが生成するPythonコードでは、API通信や設定ファイルの読み書きに標準ライブラリのjsonモジュールが頻繁に登場します。このページはPython記事で基礎を押さえた人向けに、JSON操作でよく使う機能を一覧にしたクイックリファレンスです。各項目をクリックすると、実行して確認済みのサンプルコードとあわせて詳しく解説したページに移動します。
変換の基本
ファイル入出力
dump/load— ファイルへ直接読み書きする
出力の整形
indent/sort_keys— 見やすく整形して出力するensure_ascii— 日本語などの非ASCII文字の扱いを制御する
型対応・応用
- Python型とJSON型の対応 — タプル・辞書キー・真偽値の変換ルール
default引数 — datetime等の標準非対応な型を変換するobject_hook— デコード時にカスタムオブジェクトへ変換するJSONDecodeError— 不正なJSONのエラー処理をする- NaN / Infinity — 非標準の特殊値の扱いを理解する
Python型とJSON型の基本対応
- dict → object, list/tuple → array
- Pythonの
dictはJSONの{}に、listとtupleはどちらもJSONの[]に変換される(往復するとtupleはlistになる) - str/int/float → string/number, True/False/None → true/false/null
- 基本的な型はほぼそのまま対応するが、辞書のキーは常に文字列化される
💡 ワンポイントアドバイス:外部から受け取ったJSONはtry/exceptで囲む
AIが生成したコードで、API等から受け取った文字列をjson.loads()にそのまま渡していると、形式が不正な場合にJSONDecodeErrorで処理が止まります。信頼できない入力を扱うコードではエラー処理のページで解説する例外処理を組み合わせましょう。
ファイルパスの操作はpathlib クイックリファレンス、日時の操作はdatetime クイックリファレンスもあわせてご覧ください。