例如讓我們說我們有以下的解釋:如何在Python的字典中打印給定值的鍵?
dictionary = {'A':4,
'B':6,
'C':-2,
'D':-8}
你怎麼能打印賦予它的價值一定的鑰匙嗎?
print(dictionary.get('A')) #This will print 4
你該怎麼做倒退?即不是通過引用該鍵來獲取值,而是通過引用該值來獲得鍵。
例如讓我們說我們有以下的解釋:如何在Python的字典中打印給定值的鍵?
dictionary = {'A':4,
'B':6,
'C':-2,
'D':-8}
你怎麼能打印賦予它的價值一定的鑰匙嗎?
print(dictionary.get('A')) #This will print 4
你該怎麼做倒退?即不是通過引用該鍵來獲取值,而是通過引用該值來獲得鍵。
本詞典是由組織:鍵 - >值
如果你嘗試去:值 - >鍵
然後你有幾個問題;重複,並且有時還會有一本字典包含大量(或不可干擾)的對象,而這些對象不會作爲關鍵字。
但是,如果你仍然想這樣做,你可以通過循環類型的字典鍵和值和匹配他們這樣做很容易如下:
def method(dict, value):
for k, v in dict.iteritems():
if v == value:
yield k
# this is an iterator, example:
>>> d = {'a':1, 'b':2}
>>> for r in method(d, 2):
print r
b
正如一位著名的評論,整個事情可以寫成一個生成器表達式:
def method(dict, value):
return (k for k,v in dict.iteritems() if v == value)
Python版本注意:在Python 3+中,您可以使用dict.items()
而不是dict.iteritems()
可能出現[在字典中按值獲取鍵值]的重複(http://stackoverflow.com/questions/8023306/get-key-by- value-in-dictionary) –