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+ 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告