用python读取包含json数据的文件会抛出一个我无法识别的错误
我有一个名为json.txt的json文件,其中包含以下数据用python读取包含json数据的文件会抛出一个我无法识别的错误,python,json,Python,Json,我有一个名为json.txt的json文件,其中包含以下数据 {"id":99903727,"nickname":"TEST_MLA_OFF","registration_date":"2010-12-03T14:19:33.000-04:00","country_id":"AR","user_type":"normal","logo":null,"points":0,"site_id":"MLA","permalink":"http://perfil.mercadolibre.com.ar/T
{"id":99903727,"nickname":"TEST_MLA_OFF","registration_date":"2010-12-03T14:19:33.000-04:00","country_id":"AR","user_type":"normal","logo":null,"points":0,"site_id":"MLA","permalink":"http://perfil.mercadolibre.com.ar/TEST_MLA_OFF","seller_reputation":{"level_id":null,"power_seller_status":null,"transactions":{"period":"12 months","total":25,"completed":25,"canceled":0,"ratings":{"positive":0,"negative":0,"neutral":1}}},"status":{"site_status":"deactive"}}
我使用wget获得它。我尝试用python加载json数据,使用以下python代码
json_data = json.load('json.txt')
data = json.load(json_data)
json_data.close()
print data
但这会引发以下错误
Traceback (most recent call last):
File "json-example.py", line 28, in <module>
main()
File "json-example.py", line 21, in main
json_data = json.load('json.txt')
File "/opt/sage-4.6.2-linux-64bit-ubuntu_8.04.4_lts-x86_64-Linux/local/lib/python/json/__init__.py", line 264, in load
return loads(fp.read(),
AttributeError: 'str' object has no attribute 'read'
回溯(最近一次呼叫最后一次):
文件“json example.py”,第28行,在
main()
文件“json example.py”,第21行,在main中
json_data=json.load('json.txt')
文件“/opt/sage-4.6.2-linux-64bit-ubuntu_8.04.4_lts-x86_64-linux/local/lib/python/json/_init__.py”,第264行,已加载
返回加载(fp.read(),
AttributeError:“str”对象没有属性“read”
我在谷歌上找不到错误的原因
致以最诚挚的问候。您需要为
json.load
提供一个文件流对象:
json_file = open('json.txt')
data = json.load(json_file)
json_file.close()
print data
更好的做法是将
与语句一起使用
with open('json.txt', 'r') as json_file:
data = json.load(json_file)
这样可以确保文件正确关闭,而无需
你在担心它。谢谢。就是这样。祝你好运。我在一个包含{“a”:1,“b”:2}
json对象的文件上尝试了同样的方法,但我得到了错误AttributeError:\uuuuu exit\uuuuu
。任何帮助都会很有用。