【发布时间】:2017-06-26 06:41:02
【问题描述】:
假设我有一个 Python 字典,如下所示:
sample_dict = {'Grade': {'Aya':4.0, 'John':3.0, 'Anna':1.0},
'Address': {'Aya':'California', 'John':'Canada', 'Anna':'Mexico'},
'School': 'Harvard University',
'Nationality':{'Aya':'Japanese', 'John':'American', 'Anna':'American'}
}
我很困惑如何操纵代码,我只需将参数传递给搜索例如绫,它会导致如下所示:
Grade: Aya: 4.0
Address: Aya:California
School: Harvard University
Nationality: Aya: Japanese
更好:
Aya
Grade: 4.0
Address: California
School: Harvard University
Nationality: Japanese
这是我的开始:
def get_info(name):
for key, value in sample_dict:
print(name)
if type(value) is dict:
for people, equivalent in value:
if(equivalent[name]):
print key, equivalent[name]
else:
print ("Not Found!")
else:
print key, value[key]
{'Grade': {'John': 3.0, 'Aya': 4.0, 'Anna': 1.0}, '国籍': {'John': '美国人', 'Aya': '日本人', '安娜':'美国'},'学校': '哈佛大学','地址':{'约翰':'加拿大','Aya': '加利福尼亚','安娜':'墨西哥'}}
ValueError Traceback(最近调用 最后)在() 19 打印键,值[键] 20 ---> 21 get_info('Aya')
在 get_info(name) 中 8 9 def get_info(名称): ---> 10 代表 key,sample_dict 中的值: 11 打印(姓名) 12 如果类型(值)是字典:
ValueError:解包的值太多
【问题讨论】:
标签: python