Python で辞書を json ファイルに書きこむ
2022.11.20
Python で辞書を json 形式のファイルに書きこむ方法を解説します。
import json
d = {'Alice': 173, 'Bob': 198}
j = json.dumps(d)
with open('test.json', 'w') as f:
f.write(j)
test.json
{
"Alice": 173,
"Bob": 198
}
json の dumps で辞書を json 形式の文字列にできます。j の型はあくまでも文字列です。後は j をファイルに書きこみます。
もっと簡単なやり方は json.dump に辞書を入れてしまうことです。
import json
d = {'Alice': {'Height': 173, 'Weight': 53}, 'Bob': 198}
with open('test.json', 'w') as f:
json.dump(d, f)
test.json
{
"Alice": {
"Height": 173,
"Weight": 53
},
"Bob": 198
}
ちなみに What is the difference between json.dump() and json.dumps() in python? といったページがあるように dumps と dump は混同しがちな関数です。違いはざっくりこうなります。
- dumps … 辞書などを json にする
- dump … 辞書などを json にしてファイルに書きこむ
ファイルに書きこむときは dump で統一していいでしょう。