用值获取Python字典的键
python字典的操作中,用键值对的键获取值的方法还是比较简单的,例如:
d = {1:'a', 2:'a', 3:'b', 5:'c'}
print(d[5])
输出结果为:
c
但由于值在字典中并不唯一,所以,查询值对应的键则颇费周章,下面是一个由值查键的函数,得出的对应输入值的键的列表:
def get_keys_by_value(the_dict, the_value):
rl = list()
for k in the_dict.keys():
if the_dict[k] == the_value:
rl.append(k)
return rl
if __name__ == "__main__":
d = {1:'a', 2:'a', 3:'b', 8:'f'}
print('the keys are: ', get_keys_by_value(d, 'a'))
函数get_keys_by_value的第一个参数(the_dict)是函数操作的字典对象,第二个参数(the_value)是要查询的值,返回参数是对应的键,由于对应的键可能不止一个,因此返回值的类型是一个列表。
运行 的结果为:
======================== RESTART: C:/Users/luh/kk.py ========================
the keys are: [1, 2]
>>>
在编程中,需要通过值查找键的时候,我们一般使用这个函数。