Python程式搜尋字典中的元素


字典用於以鍵值對的形式儲存資料值,類似於對映(與其他資料型別不同,它僅將單個值作為元素)。字典中提供了鍵值對以提高其效率。鍵是唯一的。字典鍵必須唯一。因此,字典中不允許重複的值。字典項是有序的、可更改的、不可變的。這裡可更改的意思是,在建立字典後,我們可以新增或刪除項。

在本文中,我們將瞭解如何使用不同的函式在字典中搜索元素。有很多函式可以使用不同的方法(如“for”和“in”、list.index()、dict.item()、使用item+list等)在字典中搜索元素。

如何從字典中搜索元素?

這裡,我們給出了一個數字字典,我們必須使用不同的方法從字典中搜索元素。有四種方法可以在字典中搜索元素。

  • 使用“for”和“in”迴圈

  • 使用items() + 列表

  • 使用dict.item()

  • 使用list.index()

使用“for”和“in”迴圈

for迴圈用於重複執行語句,直到滿足給定條件。當條件變為假時,程式中迴圈後的下一行程式碼將被執行。

“in”運算子確定給定值是否為序列(如字串、陣列、列表或元組、字典)的組成元素。它用於在字典中搜索元素。例如 -

示例

這裡,我們有一個程式,我們使用“for迴圈”在字典中搜索元素。在這個程式中,我們搜尋了字典中存在的“value=3”元素。因此,輸出為“cherry”。

fruit = {'apple' : 1, 'mango' : 2, 'cherry' : 3}
print("The original dictionary is : " + str(fruit))
val = 3
for key in fruit:
   if fruit[key] == val:
      res = key
print("The key corresponding to value : " + str(res))

輸出

The original dictionary is : {'apple': 1, 'mango': 2, 'cherry': 3}
The key corresponding to value : cherry

使用items + 列表

列表是python中的一種資料結構,它是可更改的、可變的和可迭代的有序元素序列。它們用於在單個變數中儲存多個元素。列表允許重複元素。

透過使用items(),它用於一次提取鍵和值,從而使搜尋變得容易,並且可以使用列表執行,從而使在字典中搜索元素的過程變得容易。

示例

這裡,我們有一個程式,我們使用“item()+list”在列表中搜索元素。在這個程式中,我們搜尋了字典中存在的“value=2”元素。因此,輸出為“mango”。

fruit = {'apple' : 1, 'mango' : 2, 'cheery' : 3}
print("The original dictionary is : " + str(fruit))
val = 2
res = [key for key, value in fruit.items() if value == val]
print("The key corresponding to value : " + str(res))

輸出

The original dictionary is : {'apple': 1, 'mango': 2, 'cheery': 3}
The key corresponding to value : ['mango']

使用dict.item()

透過使用dict.items(),它用於透過匹配所有值從值中提取鍵和值。

示例

這裡,我們有一個程式,我們使用“dict.item()”在列表中搜索元素。在這個程式中,我們搜尋了字典中存在的“100和11”元素。因此,輸出為“java和C”。

def get_key(val):
   for key, value in program.items():
      if val == value:
         return key
   return "key doesn't exist"
program = {"Java": 100, "Python": 112, "C": 11}
print(get_key(100))
print(get_key(11))

輸出

Java
C

使用list.index()

這是一行程式碼,用於使用縮排在字典中搜索元素。

示例

這裡,我們有一個程式,我們使用“list.index()”在字典中搜索元素。在這個程式中,我們搜尋了字典中存在的索引“112”元素。因此,輸出為“python”。

program = {"Java":100, "Python":112, "C":11}
print("One line Code Key value: ", list(program.keys())
   [list(program.values()).index(112)])

輸出

One line Code Key value: Python

結論

在本文中,我們簡要討論了用於在字典中搜索元素的不同方法。

更新於: 2023年4月24日

15K+ 次瀏覽

開啟你的 職業生涯

完成課程獲得認證

開始學習
廣告