1. ホーム
  2. python

[解決済み] JSONファイルをprettyprintする方法は?

2022-03-18 06:06:20

質問

私はprettyprintしたい混乱しているJSONファイルを持っています。Pythonでこれを行うための最も簡単な方法は何ですか?

PrettyPrintが"object"を取ることは知っています、それはファイルであることができると思います、しかし、私はファイルをどのように渡すかわかりません。ファイル名を使うだけではうまくいきません。

どのように解決するのですか?

その json モジュール にはすでに基本的なきれいな印刷が実装されています。 dump dumps という関数があり indent パラメータで、何文字分インデントするのかを指定します。

>>> import json
>>>
>>> your_json = '["foo", {"bar":["baz", null, 1.0, 2]}]'
>>> parsed = json.loads(your_json)
>>> print(json.dumps(parsed, indent=4, sort_keys=True))
[
    "foo", 
    {
        "bar": [
            "baz", 
            null, 
            1.0, 
            2
        ]
    }
]

ファイルをパースするには json.load() :

with open('filename.txt', 'r') as handle:
    parsed = json.load(handle)