【发布时间】:2018-10-08 14:21:55
【问题描述】:
在 Python 2.7 中,如何动态访问和打印嵌套字典的键和值?这是一个荒谬的例子:https://jsoneditoronline.org/?id=da7a486dc2e24bf8b94add9f04c71b4d
通常,我会这样做:
import json
json_sample = 'sample_dict.json'
json_file = open(json_sample, 'r')
json_data = json.load(json_file)
items = json_data['sample_dict']
for item in items:
dict_id = item['dict_id']
person = item['person']['person_id']
family = item['family']['members']
print dict_id
print person
print family
我可以像这样对其进行硬编码,它会给我带来理想的结果,但是我将如何动态访问每个键和值,以便:
- 第一行只打印键(
dict_id、person['person_id']、person['name']、family['members']['father']) - 第二行分别打印值(5、15、“Martin”、“Jose”)
最终结果应保存在 CSV 文件中。
【问题讨论】:
-
你知道 JSON 数据是一个字典列表吗?如果是这样,您可以使用
item.keys()作为键,使用item.values()作为值。 -
哦,是的,所以如果我这样做
item.keys(),它只会给我父母自己的听写,不包括孩子听写。item.values()然后会给我那些,但它会包括键,当我只想要值时。
标签: python json python-2.7 list dictionary