Python 漂亮的打印复杂的JSON输入

Python 漂亮的打印复杂的JSON输入,python,json,command-line,pretty-print,Python,Json,Command Line,Pretty Print,我经历过 和其他关于“pretty print JSON”的Stackoverflow帖子,但它们只适用于简单的输入 像 echo'{“foo”:“lorem”,“bar”:“ipsum”}'| python-mjson.tool 当我尝试做这样的事情时 echo'{“group”:{list:[1,2,3]},“list”:[“a”,“b”,“c”]}| python-m json.tool 它失败了 告诉我错误 应使用双引号括起属性名称:第1行第13列(字符12) PS:为什么我要尝试

我经历过 和其他关于“pretty print JSON”的Stackoverflow帖子,但它们只适用于简单的输入 像

echo'{“foo”:“lorem”,“bar”:“ipsum”}'| python-mjson.tool
当我尝试做这样的事情时

echo'{“group”:{list:[1,2,3]},“list”:[“a”,“b”,“c”]}| python-m json.tool
它失败了

告诉我错误

应使用双引号括起属性名称:第1行第13列(字符12)
PS:为什么我要尝试传递复杂的json输入?我正在试着从中解决问题1


编辑:感谢您的及时回复。但是如果我正在寻找这样的输出呢

{

“组”:{

“列表”:[1,2,3]

},

“列表”:[“a”、“b”、“c”]


}

您的JSON输入无效;您需要引用第一个
列表
键:

echo'{“group”:{“list”:[1,2,3]},“list”:[“a”,“b”,“c”]}'| python-m json.tool
#                 ^^^^^^
该工具可以处理JSON的任何复杂性,只要您为其提供有效的JSON输入。更正错误后,Python输出:

$ echo '{"group" : {"list" : [1,2,3]}, "list" : ["a","b","c"]}' | python -m json.tool
{
    "group": {
        "list": [
            1,
            2,
            3
        ]
    },
    "list": [
        "a",
        "b",
        "c"
    ]
}
在这方面:

"group" : {list : [1,2,3]}
您的json无效。它期望
list
是一个字符串,而不是。因此出现了错误。更改:

"group" : {"list" : [1,2,3]}

将解决此问题。

您可能希望让该站点知道他们的样本无效。将这样做。谢谢