轉自: https://blog.csdn.net/Jerry_1126/article/details/87907162
Python字典中的鍵是唯一的,但不同的鍵可以對應同樣的值,比如說uid,可以是1001。id同樣可以是1001。這樣的話通過值來獲取指定的鍵,就不止一個!而且也並不太好處理。這里同樣提供兩種思路來處理。
方法一:
>>> dct = {'Name': 'Alice', 'Age': 18, 'uid': 1001, 'id': 1001}
>>> def get_key1(dct, value):
... return list(filter(lambda k:dct[k] == value, dct))
>>> get_key1(dct, 1001)
['id', 'uid']
方法二:
>>> dct = {'Name': 'Alice', 'Age': 18, 'uid': 1001, 'id': 1001}
>>> def get_key2(dct, value):
... return [k for (k,v) in dct.items() if v == value]
>>> get_key2(dct, 1001)
['id', 'uid']
>>> get_key2(dct, 1000)
[]
上面的兩種方法可以很方便高效的來處理字典中按值來找鍵的問題!