问题描述
在 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'