はじめに
JSON(JavaScript Object Notation)はデータのやり取りに広く使われる形式です。下記の記事で、JSON 形式についてまとめていますので、ご興味がありましたら、ぜひご閲覧ください。
本記事では Python で JSON 形式のファイルを作成と編集、複製、削除する方法についてまとめました。
JSONファイルの作成
Python で JSON 形式のファイルを作成していきます。このプログラムでは、辞書型のデータ data
を JSON 形式でファイルに書き込んでいます。
import json
# 作成するJSONファイル名
FILE_NAME = "data.json"
# データを定義
data = {
"name": "John Doe",
"age": 25,
"city": "Example City"
}
# JSONファイルに書き込み
with open(FILE_NAME, "w") as json_file:
json.dump(data, json_file, indent=4)
print("JSONファイルが作成されました: " + FILE_NAME)
プログラムの実行結果を示します。
$ python .\makeJson.py
JSONファイルが作成されました: data.json
プログラムの実行により、次のような data.json が作成されます。
{
"name": "John Doe",
"age": 25,
"city": "Example City"
}
JSONファイルの編集
Python で既存の JSON 形式のファイルを編集していきます。このプログラムでは、先ほどの data.json ファイルを読み込み、データを変更してから再びファイルに書き込んでいます。
import json
# 編集するJSONファイル名
FILE_NAME = "data.json"
# JSONファイルを読み込み
with open(FILE_NAME, "r") as json_file:
data = json.load(json_file)
# データを編集
data["age"] = 26
data["city"] = "New City"
# 編集したデータをJSONファイルに書き込み
with open(FILE_NAME, "w") as json_file:
json.dump(data, json_file, indent=4)
print("JSONファイルが編集されました: " + FILE_NAME)
プログラムの実行結果を示します。
$ python .\makeJson.py
JSONファイルが作成されました: data.json
プログラムの実行により、data.json は次のように編集されます。"age"
キーと"city"
キーの各値が変更されていることを確認してください。
{
"name": "John Doe",
"age": 26,
"city": "New City"
}
JSONファイルの複製
Python で既存の JSON 形式のファイルを別名で複製していきます。このプログラムでは、先ほどの data.json ファイルを読み込んで、新規に dataCopied.json という別名のファイルを作成することでファイルの複製をしています。
import shutil
# 複製するファイル名
ORIGINAL_FILE_NAME = "data.json"
# 複製で作成されるファイル名
COPY_FILE_NAME = "dataCopied.json"
try:
# JSONファイルをコピー
shutil.copy(ORIGINAL_FILE_NAME, COPY_FILE_NAME)
print(f"JSONファイルがコピーされました: {COPY_FILE_NAME}")
except FileNotFoundError:
print("指定されたファイルが見つかりません")
except Exception as e:
print(f"エラーが発生しました: {e}")
プログラムの実行結果を示します。
$ python .\copyJson.py
JSONファイルがコピーされました: dataCopied.json
プログラムの実行により、data.json ファイルが複製され、新たに dataCopied.json が作成されます。各 JSON ファイルの内容が同一であることを確認してください。
JSONファイルの削除
最後に、Python プログラムで JSON ファイルを削除する方法を記します。このプログラムでは、os
モジュールを使用して指定したファイルを削除しています。
import os
# 削除するJSONファイル名
FILE_NAME = "data.json"
# ファイルを削除
if os.path.exists(FILE_NAME):
os.remove(FILE_NAME)
print("JSONファイルが削除されました: " + FILE_NAME)
else:
print("指定されたJSONファイルは存在しません")
プログラムの実行結果を示します。
$ python .\deleteJson.py
JSONファイルが削除されました: data.json
これにより、data.json が削除されます。
おわりに
本記事では、Python を使用して JSON ファイルを操作する基本的な手順をまとめました。不明な点や誤っている点があればコメントにてご連絡ください。