JSON-python

【jsonモジュール】Pythonで「JSON文字列」を読み込む方法【loads】

はじめに

Python組み込みのjsonモジュールの「loads関数」を使って「JSON文字列」を読み込む方法を解説します。loads関数を使うと、JSONファイルを辞書に変換することができます。

Python組み込みなのでインストール不要。使い方も簡単なので、サクッとJSONを扱いたい方はぜひご覧ください。

環境

この記事は以下の環境で作成しています。

環境 バージョンなど 備考
Python 3.9.6
OS Wiindows11 Win10でもOKです。
bookfan 1号店 楽天市場店
¥1,980 (2022/11/19 22:15時点 | 楽天市場調べ)

プログラミングのトレンドを知るには雑誌が最適です

loadとloadsの違い

JSONの読み込みには「load」「loads」の2つの関数があります。読み込み対象が「ファイル」か「文字列」かで2つの関数を使い分けます。

今回はJSON「文字列」からの読み込みなので「loads関数」を使用します。

関数名 読み込み対象
load JSON「ファイル」
loads JSON「文字列」

「読み取り」となると「Parse」を思い浮かべますが、jsonモジュールにParse関数はありません。

※ JSONを「ファイル」から読み取る方法については、こちらの記事をご覧ください。

プログラム概要

今回のプログラムの概要は以下の通りです。

  • JSON文字列を辞書に変換
  • 辞書データの書き換え・再表示

実行結果

後述の「JSON文字列を読み込むコード」の実行結果です。JSONファイルを辞書型のデータに取り込んで表示しています。

最終行のメールアドレスは、JSONの「Email」を書き換えて、再表示しています。

james@example.com
User
Admin
taro@example.com

全体コード

全体コードは以下の通りです。詳細な内容は後述する「コードのポイント」で解説します。

import json

# JSON文字列を作成します
jsonString = '{ "Email": "james@example.com", \
                       "Roles": ["User","Admin"] \
                    }'

# JSON文字列を辞書に読み込みます
dict = json.loads(jsonString)

# 読み込んだ内容にアクセス(表示)します
print( dict["Email"])

print( dict["Roles"][0])
print( dict["Roles"])

# 要素を指定して代入すると、値の書き換えができます
dict["Email"] = "taro@example.com"
print( dict["Email"] )

コードのポイント

loads関数でJSONから辞書にする

loads関数の引数にJSON文字列を渡すと、JSONの内容を辞書型のオブジェクトとして取得できます。

# JSON文字列を辞書に読み込みます
dict = json.loads(jsonString)

辞書にアクセス

辞書の要素名(キー名)には、JSONの変数名がそのまま使われます。そのため辞書のオブジェクトにJSONの変数名を指定することでアクセスできます。

# 読み込んだ内容にアクセス(表示)します
print( dict["Email"])

JSONデータが配列の場合は、要素名の後ろに番号を付けてアクセスしてください。

print( dict["Roles"][0])
print( dict["Roles"])

JSONデータの書き換え

データを書き換えもJSONの変数名を指定して、代入するだけです。

# 要素を指定して代入すると、値の書き換えができます
dict["Email"] = "taro@example.com"
print( dict["Email"] )

まとめ

Python組み込みのjsonモジュールの「load関数」を使って「JSON文字列」を読み込む方法を解説しました。参考になればうれしいです。

UdemyでPythonのスキルに差をつける

Pythonのスキルを上げるには、Udemyの動画講座がおすすめです。

1講座 2440円程度で返金保証あり、無料講座も130本近く公開されています。アプリならオフラインで視聴できて、時間や場所にも縛られません。みんながやっていない今始めることで、スキルや評価に差をつけることができます。以下はPythonの無料講座の一覧です。

⇒ Pythonの講座一覧はこちら
icon

おすすめ講座

Pythonの講座の中で、特におすすめなのは以下の講座です。内容はもちろんですが、落ち着いた話し方とBGMで講座としても聴きやすい作りになっています。

業務改善をテーマにPythonの基礎を学ぶ

京都大学・トヨタ自動車を経て独立された、安井亮平さんの講座です。Pythonを使った業務効率化/自動化などをテーマにPythonの基礎が学べます。

⇒ 業務効率化・自動化をテーマにPythonの基礎を学ぶにはこちら
icon

シリコンバレー流コードスタイル

米シリコンバレーの現役エンジニア、酒井潤さんの講座です。Pythonの基礎~応用を、シリコンバレー流の「動くだけでなく、他人も読めるコード」で解説。みんなよりちょっと進んだコード」が書けるようになります。

⇒ シリコンバレー流のコードを学ぶにはこちら
icon

質問・要望 大歓迎です

「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。

使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です