Python中的JSON解析问题

2024-04-25 04:45:44 发布

您现在位置:Python中文网/ 问答频道 /正文

当我试图解析一个JSON转储时,我得到了这个属性错误

Traceback (most recent call last):
          File "Security_Header_Collector.py", line 120, in <module>
            process(sys.argv[-1])
          File "Security_Header_Collector.py", line 67, in process
            server_details = json.load(header_final)
          File "/usr/lib/python2.7/json/__init__.py", line 274, in load
            return loads(fp.read(),
        AttributeError: 'str' object has no attribute 'read'

脚本:

^{pr2}$

Tags: inpyjsonread属性错误lineload
3条回答

你的代码

header_final=json.dumps(finalJson,indent=4)

会给你绳子

您必须使用json.loads将字符串转换为json。在

^{}返回一个JSON格式的字符串,但是^{}希望得到类似文件的对象,而不是字符串。在

解决方案:在代码中使用^{},而不是json.load

在json.load文件-用于文件/对象 json.loads-用于字符串或数组元素。在

您还可以考虑立即以hereoc formate的形式创建整个JSON,然后在其上应用转义,这样就更容易验证JSON格式。在

相关问题 更多 >