使用`python -m jsontool`从命令行验证JSON给出'No JSON对象可以被解码'

3ch*_*eel 21 python command-line json

我有一个data.json文件,我正在使用python的json.tool通过命令行验证,但它不断给我一个错误消息:

$ python -m json.tool < data.json
No JSON object could be decoded
Run Code Online (Sandbox Code Playgroud)

以下是内容data.json:

$ cat data.json
{ "fields": 
    [
        [ "first_name", null, {} ],
        [ "last_name", null, {} ],
        [ "addr1", null, {} ],
        [ "addr2", null, {} ],
        [ "city", null, {} ],
    ]
}
Run Code Online (Sandbox Code Playgroud)

单引号我没有问题,文件也没有空(显然),所以我不确定是什么原因引起了这个问题.

3ch*_*eel 12

这是因为最后一个嵌套列表后面的尾随逗号[ "city", null, {} ].我不小心把它留了进去,JSON不允许它们.