'dict' 对象没有属性 'read'

2022-01-13 00:00:00 python json attributes

问题描述

在 Windows 系统上运行 Python 我遇到了将 JSON 文件加载到内存中的问题.我的代码有什么问题?

Running Python on a Windows system I encountered issues with loading a JSON file into memory. What is wrong with my code?

>>> import json
>>> array = json.load({"name":"Name","learning objective":"load json files for data analysis"})
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    array = json.load({"name":"Name","learning objective":"load json files for data analysis"})
  File "C:Python34libjson\__init__.py", line 265, in load
    return loads(fp.read(),
AttributeError: 'dict' object has no attribute 'read'


解决方案

既然要转成json格式,就用json.dumps()代替json.load().这会起作用:

Since you want to convert it into json format, you should use json.dumps() instead of json.load(). This would work:

>>> import json
>>> array = json.dumps({"name":"Galen","learning objective":"load json files for data analysis"})
>>> array
'{"learning objective": "load json files for data analysis", "name": "Galen"}'

输出:

>>> a = json.loads(array)
>>> a["name"]
u'Galen'

相关文章