PythonのdictをJSONに変換(JSONからPythonへも)
printで出力したPythonのdict・list・tupleを正しいJSONに変換します。True/None、タプル、Decimal、datetimeに対応し、JSONからPythonへの逆変換もできます。
タプルはJSON配列になりました。
datetime/date/timeの値は、isoformat()が返すISO 8601のテキストになりました。
Decimalの値は、桁をそのまま保ったJSONの数値になりました(json.dumpsではエラーになります)。
テキストでないdictのキーは、json.dumpsと同様にテキストになりました:1 → "1"、True → "true"、None → "null"。
大きな整数もすべての桁を保ちます。JavaScriptは、±9,007,199,254,740,991を超える整数を読み込む際に丸めます。
Pythonのdictをprintで出力すると、シングルクォート、True、False、None、丸括弧のタプルが現れます。JSONのように見えても、どのJSONパーサーも受け付けないテキストです。このツールは、Pythonのリテラル構文をPythonと同じように読み取り(エスケープ、rawやバイト列の文字列、set、Decimal、datetime、出力に現れるOrderedDictを含む)、正しいJSONとして書き出します。逆に、JSONをコードに貼り付けられるPythonリテラルに変換することもできます。
使い方
- print()・ログ・デバッガなどで得たdict、list、tupleの出力を貼り付けます。
- Python → JSON(または逆方向)を選びます。
- インデントと、nan・infの書き方を選びます。
- JSONをコピーします。
計算式
True → true · False → false · None → null · 'text' → "text" · (1, 2) と {1, 2} → [1, 2] · {1: 'a'} → {"1": "a"}
文字列はPythonの規則に従います。シングルクォート、ダブルクォート、三重引用符、r・b接頭辞、\n・\x41・\u00e9・\U0001F600などのエスケープ、隣り合うリテラルの連結に対応します。数値は桁を保つため、大きな整数やDecimalの値も正確で、16進・8進・2進とアンダースコアは変換されます。テキストでないdictのキーはjson.dumpsと同様にテキストになります。datetime・date・timeはISO 8601のテキストになります。コードは実行しません。変数、一覧にあるコンストラクタ以外の関数呼び出し、式を含むf-stringはエラーとして報告します。
計算例
サンプルでは、('admin', 'beta')が["admin", "beta"]に、Trueがtrueに、Noneがnullに、scoresのキー1と2が"1"と"2"に、datetime.datetime(2024, 2, 29, 13, 45)が"2024-02-29T13:45:00"に、Decimal('19.99')が19.99になり、12345678901234567890の20桁がすべて保たれます。
よくある質問
引用符を置き換えるだけではだめですか?
'を"に置き換えると"It's"のような文字列が壊れ、TrueやNoneは残り、エスケープやタプルも扱えません。リテラルを正しく解析して初めて、json.dumpsと同じ結果になります。
nanとinfはどうなりますか?
JSONにはそのような値がありません。既定ではnullになります。文字列にするか、Pythonのjsonモジュールと同様にNaN/Infinityとして書き出すこともできます(ほとんどのJSONパーサーは拒否します)。
私のコードは実行されますか?
いいえ。リテラルの値を読み取るだけです。未知の変数名や呼び出しは評価せず、エラーで止まります。
データはアップロードされますか?
いいえ。すべてブラウザ内で処理されます。
出典
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/python-dict-to-json-tool/
このツールを引用する
kakaoCalc. (2026, November 8). PythonのdictをJSONに変換(JSONからPythonへも). https://kakao.mobile/ja/tools/python-dict-to-json-tool/
“PythonのdictをJSONに変換(JSONからPythonへも).” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/python-dict-to-json-tool/.