PythonのJSONをディクショナリ(辞書)にデコードするサンプルです。(確認環境:Python 3)
目次
サンプル | 文字列のJSONを処理する(json.loads関数) |
JSONをディクショナリにデコードする | |
ファイルのJSONを処理する(json.load関数) | |
ファイルのJSONをディクショナリにデコードする |
文字列のJSONを処理する(json.loads関数)
json.loads(s, *, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw) |
- json.loads関数は、JSONをディクショナリにデコードします。
- 1つめの引数にJSON文字列を指定します。
- 2つめ以降の引数は省略可能です。
- 先頭にimport jsonの記述が必要です。
- 以下は、Python 3.7.3ドキュメントのJSON エンコーダおよびデコーダのリンクです。
https://docs.python.org/ja/3/library/json.html
JSONをディクショナリにデコードする
# coding: utf-8
import json
a = '{"color1":"赤","color2":"青"}';
b = json.loads(a);
print(b) #{'color1': '赤', 'color2': '青'}
print (b.keys()) #dict_keys(['color1', 'color2'])
print (b.values()) #dict_values(['赤', '青'])
print (b["color1"]) #赤
print (b.get("color2")) #青
4行目は、JSON文字列です。
6行目は、json.loads関数でデコードしています。
8行目は、ディクショナリを表示しています。
10行目は、ディクショナリのキーを表示しています。
11行目は、ディクショナリの値を表示しています。
13,14行目は、ディクショナリのキーを指定して値を表示しています。
ファイルのJSONを処理する(json.load関数)
json.load(fp, *, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw) |
- json.load関数は、ファイルにあるJSONをディクショナリにデコードします。
- 1つめの引数にファイルから読み込んだ変数を指定します。
- 2つめ以降の引数は省略可能です。
- 先頭にimport jsonの記述が必要です。
- 以下は、Python 3.7.3ドキュメントのjson.loadのリンクです。
https://docs.python.org/ja/3/library/json.html#json.load
ファイルのJSONをディクショナリにデコードする
読み込むファイルのJSONです。
{
"color1": "赤",
"color2": "青"
}
上記ファイルを読み込むコードです。
# coding: utf-8
import json
a = open('test1.json', 'r')
b = json.load(a);
print(b) #{'color1': '赤', 'color2': '青'}
print (b.keys()) #dict_keys(['color1', 'color2'])
print (b.values()) #dict_values(['赤', '青'])
print (b["color1"]) #赤
print (b.get("color2")) #青
4行目は、open関数でファイルを開いています。
6行目は、json.load関数でデコードしています。
8行目は、ディクショナリを表示しています。
10行目は、ディクショナリのキーを表示しています。
11行目は、ディクショナリの値を表示しています。
13,14行目は、ディクショナリのキーを指定して値を表示しています。
関連の記事
Python ディクショナリの仕組みと使い方(dictionary)
Python JSONをディクショナリにする(json.loads/load)