PythonでJSONファイルを読み書きする方法を徹底解説!初心者でも安心の入門ガイド

PythonでJSONファイルを読み書きする方法|初心者向け入門ガイドと実例 ツール

Pythonを使えば、データの保存ややり取りに欠かせないJSONファイルを簡単に扱うことができます。本記事では、PythonでJSONファイルを読み書きする方法をサンプルコード付きでわかりやすく解説します。

JSONとは?基本をおさらい

まず、JSON(JavaScript Object Notation)はデータをやり取りするための軽量なフォーマットです。人間にも読みやすく、機械にも扱いやすいのが特徴です。Pythonでは標準ライブラリのjsonモジュールを使うことで、外部ライブラリなしにJSONを操作できます。たとえばAPIでのデータ交換や設定ファイルの保存など、さまざまな場面で活用されています。したがって、PythonでJSONを使いこなすことは非常に重要です。

PythonでJSONを扱う基本的な流れ

PythonでJSONを扱う場合、以下の2つの操作が中心となります。

  • Pythonの辞書やリストをJSON形式に変換してファイルへ保存する(書き込み)
  • JSONファイルを読み込んでPythonのデータ型に変換する(読み込み)

次の章から具体的なサンプルコードを交えて解説していきます。

JSONファイルを書き込む方法

基本的な書き込み

Pythonで辞書型のデータをJSONファイルに保存するには、json.dump()を使います。


import json

data = {
    "name": "Taro",
    "age": 25,
    "language": "Python"
}

with open("data.json", "w", encoding="utf-8") as f:
    json.dump(data, f, ensure_ascii=False, indent=2)

このコードでは、辞書datadata.jsonというファイルに保存しています。ensure_ascii=Falseを指定すると日本語も正しく保存でき、indent=2で読みやすいインデントが付きます。

よくある注意点

ファイルを開く際に"w"モードを使うと、同じ名前のファイルが既にある場合は上書きされます。そのため、大切なデータを誤って消してしまわないように注意しましょう。また、大きなデータを扱う場合はファイルサイズにも気を配る必要があります。

JSONファイルを読み込む方法

基本的な読み込み

JSONファイルをPythonで扱うためにはjson.load()を使います。


import json

with open("data.json", "r", encoding="utf-8") as f:
    data = json.load(f)

print(data["name"])  # 出力: Taro

このように、JSONファイルを読み込むとPythonの辞書型に変換されます。そのため、通常の辞書操作と同じように値を取り出せます。

文字コードの注意点

特に日本語を含むJSONファイルを扱う場合、encoding="utf-8"を指定しないと文字化けする可能性があります。したがって、常にエンコーディングを明示することをおすすめします。

PythonでJSONを扱う応用テクニック

文字列としてJSONを扱う

ファイルではなく文字列としてJSONを扱いたい場合には、json.dumps()json.loads()を利用します。


import json

data = {"city": "Tokyo", "population": 14000000}

# 辞書をJSON文字列に変換
json_str = json.dumps(data, ensure_ascii=False)

# JSON文字列を辞書に変換
parsed = json.loads(json_str)

print(json_str)
print(parsed["city"])

この方法を使えば、APIから受け取ったJSON文字列を簡単に扱えるようになります。

エラーハンドリング

JSONファイルが壊れていたり、フォーマットが正しくない場合はjson.JSONDecodeErrorが発生します。そのため、読み込み時にはtry-exceptでエラー処理を行うと安心です。


import json

try:
    with open("broken.json", "r", encoding="utf-8") as f:
        data = json.load(f)
except json.JSONDecodeError as e:
    print("JSONの形式が不正です:", e)

JSONを使う具体的な場面

JSONはAPIでのデータ通信、ログ保存、アプリケーション設定ファイルなど幅広い用途で利用されます。たとえばWebサービスと連携してデータを取得する場合、多くのケースでJSON形式が返ってきます。したがって、PythonでのJSON操作に慣れておくと開発の幅が広がります。

Python初心者におすすめのサービス

「もっと実践的なコード例が欲しい」「自分の用途に合わせて教えてほしい」という方には、

テックアカデミーがおすすめです。

AI関連コースやシステム開発コース、アプリ開発コースなど豊富な学習が可能です。

さらに今なら無料相談でアマギフプレゼントもあるので、気軽にお申込みしてみてください。

テックアカデミー無料相談

また、プログラミング学習のプラットフォームとして、ココナラでは、現役エンジニアや経験豊富なPython講師が、あなたのレベルや目的に合わせてマンツーマンで指導してくれます。

書籍や動画ではカバーしきれない、あなた専用のカリキュラムで学べるのが最大の魅力。短時間で効率的にスキルを伸ばしたいなら、まずは出品者のサービスをチェックしてみましょう。

また、教える側としてスキルを活かして副業・独立を目指すことも可能です。
プログラミング経験やPythonの知識があれば、自分の得意分野をサービスとして出品し、全国の学習者から直接依頼を受けられます。オンラインで完結するため、場所や時間に縛られず、自分のペースで働けるのも大きなメリットです。

こちらのリンクから詳細をチェックしてみてください。

▶ ココナラを活用する

まとめ

Pythonでは標準ライブラリを使うだけで、JSONファイルの読み書きを簡単に行えます。特にAPIや設定ファイルとの連携には欠かせないスキルです。エラー処理や日本語対応も含めて習得しておきましょう。

以下のリンクから、

SESの組込みシステムから色々な不満を持ち、自社WEBサービスへ転職した実体験の記事がありますので、是非読んでみてください。とても喜びます。

SESの組込みシステムから自社WEBサービスのエンジニアに転職した話

参考リンク

コメント

タイトルとURLをコピーしました