检索json数据python的键,值

时间:2016-01-22 02:14:29

标签: python json

我有一个带有类似

字典的Json文件
{"tvs": 92, "sofas": 31, "chairs": 27, "cpus": 007}

我尝试在字典中循环并使用相应的值打印密钥,在我的代码中我得到了太多的值来解压错误。

with open('myfile.json', "r") as myfile:
json_data = json.load(myfile)
for e, v in json_data:
  for key, value in e.iteritem():
    print key, value

3 个答案:

答案 0 :(得分:1)

这是你要找的吗?

>>> json = {"tvs": 92, "sofas": 31, "chairs": 27, "cpus": 007}
>>> for j in json:
...     print j, json[j]
... 
chairs 27
sofas 31
cpus 7
tvs 92

答案 1 :(得分:1)

试试这个:

with open('myfile.json', "r") as myfile:
    json_data = json.load(myfile)
    for e, v in json_data.items():
        print e,v

您的代码中还有一个额外的循环,输入文件也包含无效数据007。将它加载到json应该会给你一个错误。

答案 2 :(得分:1)

因此,默认情况下,dict会迭代其键。

for key in json_data:
    print key
# tvs, sofas, etc...

相反,您似乎想迭代键值对。这可以通过在字典上调用.items()来完成。

 for key, value in json_data.items():
    print key, value

或者您可以通过调用.values()来迭代这些值。