【Python】第6章第5回:JSONファイルの操作方法
本記事では、PythonでJSONファイルを操作する方法を解説します。JSONはデータ交換で広く利用される形式で、Pythonの標準ライブラリを使えば簡単に扱うことができます。
0. 記事の概要
この記事を読むメリット
- JSONファイルの基礎を理解:構造や用途を把握できます。
- 実践的な操作を習得:Pythonを使ったJSONファイルの読み書き方法を学べます。
- エラー処理のスキル向上:JSON操作時の注意点やエラー対策を理解できます。
この記事で学べること
- JSONファイルの基礎知識
- PythonでのJSONファイル読み書き方法
- エラー処理と応用例
1. JSONファイルとは?
1.1 定義と特徴
JSON(JavaScript Object Notation)は、軽量なデータ交換フォーマットです。人間と機械の双方にとって読みやすく、書きやすいという特徴があります。
1.2 主な用途
- API通信でのデータ交換
- 設定ファイルの保存
- データの永続化
2. PythonでJSONファイルを読み込む方法
2.1 Pythonの標準ライブラリjson
Pythonではjson
モジュールを使用してJSONデータを簡単に操作できます。
2.2 基本的なコード例
# JSONファイルを読み込む
import json
with open("example.json", "r") as file:
data = json.load(file) # JSONデータを辞書として読み込む
print(data)
動作解説
json.load()
を使用して、JSONファイルの内容を辞書型データに変換します。with
文を使用することで、ファイルを自動的に閉じることが保証されます。
3. PythonでJSONファイルを書き込む方法
3.1 JSONデータの作成と書き込み
Pythonの辞書型データをJSONファイルとして保存するには、json.dump()
を使用します。
3.2 基本的なコード例
# JSONファイルに書き込む
import json
data = {
"名前": "田中",
"年齢": 30,
"職業": "エンジニア"
}
with open("output.json", "w") as file:
json.dump(data, file, ensure_ascii=False, indent=4) # JSONファイルにデータを書き込む
動作解説
json.dump()
を使用して辞書型データをJSON形式で書き込みます。ensure_ascii=False
を指定することで、日本語文字列を正しく保存します。indent=4
でインデントを指定し、読みやすい形式で保存します。
4. 練習問題
以下の課題に挑戦してみましょう。
- 任意のJSONファイルを作成し、Pythonで読み込んで内容を出力してください。
- Pythonで辞書型データを作成し、JSONファイルに書き込んでください。
- 存在しないJSONファイルを読み込むコードを書き、エラー処理を組み込んでください。
5. 練習問題の解答と解説
問1〜3の解答例
# 問1: JSONファイルの読み込み
import json
with open("example.json", "r") as file:
data = json.load(file)
print(data)
# 問2: JSONファイルの書き込み
data = {
"商品": "リンゴ",
"価格": 100,
"在庫": 50
}
with open("data.json", "w") as file:
json.dump(data, file, ensure_ascii=False, indent=4)
# 問3: エラー処理付きJSON操作
try:
with open("nonexistent.json", "r") as file:
data = json.load(file)
except FileNotFoundError:
print("ファイルが見つかりません。")
6. まとめ
本記事では、PythonでのJSONファイル操作を学びました。この知識を活用して、データの保存や通信を効率化してください。