每当我执行此代码时......
import json, urrlib2
res = urrlib2.urlopen('http://website.com/data.json')
data = json.load(res)
for line in json.dumps(data["specific"]["data"], sort_keys=True, indent=0):
print line
每个字符都以新行打印。我正在使用python2.7,我完全不知道,出了什么问题。它不应该这样做,因为当我在for line语句之前打印数据时,我得到了一个格式很好的列表。
答案 0 :(得分:1)
json.dumps(obj)
会将obj
转换为格式化字符串(可以使用json.dump(obj, file)
将其写入文件。当您遍历字符串时,会迭代其字符:< / p>
>>> for line in "abc":
print(line)
a
b
c
相反,我认为你想迭代对象的内容,例如:
for line in data["specific"]["data"]:
print line
答案 1 :(得分:0)
您需要使用read获取数据:
data = res.read()
data = json.load(data)