1

テキスト ファイルに見苦しい JSON オブジェクトのリストが 1 行に 1 つずつあります。それらをうまく印刷して、結果をファイルに送信したいと思います。

json.tool のコマンドライン python バージョンを使用する私の試み:

parallel python -mjson.tool < jsonList

ただし、python の json.tool が複数の引数としてそれを開こうとしてスローするため、この json の解析で何か問題が発生しているようです。

IOError: [Errno 2] そのようなファイルまたはディレクトリはありません: {一重引用符、スペース、二重引用符を含む行の内容}

行で区切られた各オブジェクトをモジュールへの単一の引数として扱うようにするにはどうすればよいですか? ファイルが巨大であるため、Python でファイルを直接開いてシリアルに処理するのは非効率的なソリューションです。そうしようとすると、CPU が固定されます。

4

3 に答える 3

1

json モジュールには、すでにあなたが考えているものに似たものがあります。

>>> import json
>>>
>>> my_json = '["cheese", {"cake":["coke", null, 160, 2]}]'
>>> parsed = json.loads(my_json)
>>> print json.dumps(parsed, indent=4, sort_keys=True)
[
    "cheese", 
    {
        "cake": [
            "coke", 
            null, 
            160, 
            2
        ]
    }
]

また、inモードmy_jsonを使用してテキスト ファイルから入力することもできます。openr

于 2013-08-22T18:41:34.293 に答える