從字典中的值查找鍵
您在檢索 Python 字典中與特定年齡相關的名稱時遇到了挑戰。讓我們深入研究如何透過更有效的方法來實現這一目標。
問題
您的原始程式碼嘗試迭代字典的值並將它們與輸入進行比較年齡。但是,單獨迭代值並不能提供對對應鍵的存取。這會導致您在嘗試直接檢索名稱時遇到 KeyError。
解
要找出與特定值關聯的鍵,請使用反轉的方法鍵值關係。在 Python 中,可以利用 dict.keys() 和 dict.values() 方法來實現此目的。
Python 2.x
mydict = {'george': 16, 'amber': 19} print mydict.keys()[mydict.values().index(16)] # Prints 'george'
在 Python 中2.x 中,mydict.values() 傳回值清單。透過使用index(),您可以確定目標值在該清單中的位置。然後可以使用 mydict.keys()[index] 檢索對應的鍵。
Python 3.x
mydict = {'george': 16, 'amber': 19} print(list(mydict.keys())[list(mydict.values()).index(16)]) # Prints 'george'
在 Python 3.x 中,兩個 dict .keys() 和 dict.values() 傳回迭代器。要取得列表,您需要使用 list() 明確轉換它,如上所示。
結論
這種方法允許您根據已知值高效地檢索鍵在 Python 字典中。請記得考慮您正在使用的 Python 版本,因為版本之間的語法可能略有不同。
以上是如何在Python中根據值高效查找字典鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!