通过字典中的值获取键
我制作了一个函数,该函数将查询年龄Dictionary并显示匹配的名称:
dictionary = {'george' : 16, 'amber' : 19}search_age = raw_input("Provide age")
for age in dictionary.values():
if age == search_age:
name = dictionary[age]
print name
我知道如何比较和查找年龄,但我不知道如何显示此人的名字。另外,KeyError由于第5行,我得到了提示。我知道这是不正确的,但是我不知道如何使它向后搜索。
回答:
空无一人。dict不打算以此方式使用。
dictionary = {'george': 16, 'amber': 19}search_age = input("Provide age")
for name, age in dictionary.items(): # for name, age in dictionary.iteritems(): (for Python 2.x)
if age == search_age:
print(name)
mydict = {'george': 16, 'amber': 19}print mydict.keys()[mydict.values().index(16)] # Prints george
或在Python 3.x中:
mydict = {'george': 16, 'amber': 19}print(list(mydict.keys())[list(mydict.values()).index(16)]) # Prints george
基本上,它将字典中的值分隔在一个列表中,找到您拥有的值的位置,并在该位置获取键。
有关Python 3的更多信息keys()
,如何从dict中获取值列表?.values()
以上是 通过字典中的值获取键 的全部内容, 来源链接: utcz.com/qa/419163.html