每当我执行这段代码时...
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 语句之前打印数据时,我会得到一个格式良好的内容列表。
最佳答案
json.dumps(obj)
会将 obj
转换为格式化字符串(可以使用 json.dump(obj, file)
。当你迭代一个字符串时,你迭代它的字符:
>>> for line in "abc":
print(line)
a
b
c
相反,我认为您想要迭代对象的内容,例如:
for line in data["specific"]["data"]:
print line
关于python - for line in json 对象每行返回一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23761592/