Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用python读取包含json数据的文件会抛出一个我无法识别的错误_Python_Json - Fatal编程技术网

用python读取包含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

我有一个名为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/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
。任何帮助都会很有用。