在 Python 字典中按值查詢鍵

Jinku Hu 2023年1月30日 2020年12月19日
  1. 使用 dict.items() 在 Python 字典中按值查詢鍵
  2. 使用 .keys().values() 在 Python 字典中按值查詢鍵
在 Python 字典中按值查詢鍵

字典是一個鍵值對中的元素集合。字典中儲存的元素是無序的。在本文中,我們將介紹在 Python 字典中按值查詢鍵的不同方法。通常情況下,使用鍵來訪問值,但這裡我們將使用值來訪問鍵。這裡的鍵是一個與值相關聯的標識。

使用 dict.items() 在 Python 字典中按值查詢鍵

dict.items() 方法返回一個列表,其單個元素是由字典值的鍵組成的元組。我們可以通過迭代 dict.items() 的結果並將 value 與元組的第二個元素進行比較來獲得鍵。

示例程式碼:

my_dict ={"John":1, "Michael":2, "Shawn":3}
def get_key(val):
    for key, value in my_dict.items():
         if val == value:
             return key
 
    return "There is no such Key"
   
print(get_key(1))
print(get_key(2))

輸出:

John
Michael

使用 .keys().values() 在 Python 字典中按值查詢鍵

dict.keys() 返回一個由字典的鍵組成的列表;dict.values() 返回一個由字典的值組成的列表。.keys().values() 中生成的項的順序是一樣的。

Python 列表的 index() 方法給出了給定引數的索引。我們可以將 value 傳遞給生成的鍵列表的 index() 方法,得到這個值的索引。然後就可以通過返回的索引訪問生成的值列表來獲得該鍵。

my_dict ={"John":1, "Michael":2, "Shawn":3}
 
list_of_key = list(my_dict.keys())
list_of_value = list(my_dict.values())
 
position = list_of_value.index(1)
print(list_of_key[position])
 
position = list_of_value.index(2)
print(list_of_key[position])

輸出:

John
Michael
Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

相關文章 - Python Dictionary