LoginSignup
6
4

More than 1 year has passed since last update.

JSONとdict型の相互変換(Python)

Last updated at Posted at 2022-02-25

元々Scrapboxに書いていた内容。
dict型変数の中身をファイルに書き出したい時などに重宝します。

JSONからdict型へ

.jsonファイルから読み込んでdict(辞書)型変数に変換

import json
dir = "読み込み先ファイルパス"
encoding = "utf-8"	# 読み込むファイルのエンコードによって適宜変える。
with open(dir, mode="rt", encoding="utf-8") as f:
	data = json.load(f)		# JSONのファイル内容をdictに変換する。

JSON形式の文字列からdict型変数に変換

import json
s = '{"name":"太郎", "value": 100}'	# 読み込む文字列
data = json.loads(s)				# sをdictに変換

dict型からJSONへ

dict型変数からJSONに変換して保存

import json
dir = "書き込み先ファイルパス"
data = {"name":"太郎", "value": 100}	# 任意のdict型変数
with open(dir, mode="wt", encoding="utf-8") as f:
	json.dump(data, f, ensure_ascii=False, indent=2)
  • ensure_asciiの値をFalseにしないと、asciiにある文字以外はエンコードされてしまう。
  • indentの値は任意で。
    • 2とすると半角スペース2個でインデントする。

dict型変数からJSON形式の文字列に変換

import json
data = {"name":"太郎", "value": 100}	# 任意のdict型変数
s = json.dumps(data, ensure_ascii=False, indent=2)	# JSON形式の文字列に変換

参考

6
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4