Python 在字典中搜索元素
字典用于存储键值对数据,就像映射一样(与其他数据类型不同,它只保存一个值作为元素)。为了使字典更加有效,提供了 键:值
的形式。键是唯一的,字典的键必须是唯一的,因此字典中不允许重复的值。字典项是有序的、可更改的、不可变的。这里的可更改意味着在字典创建后,我们可以添加或删除项。
在本文中,我们将了解如何通过使用不同的函数在字典中搜索元素。有许多函数可以通过使用不同的方法来搜索字典中的元素,比如“for”和“in”、list.index()、dict.item(),以及使用item+list等。
如何从字典中搜索元素
在这里,我们给出了一个数字字典,我们需要通过使用不同的方法从字典中搜索元素。有四种方法可用于在字典中搜索元素。
- 通过使用“for”和“in”循环
-
通过使用items() + list
-
通过使用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()+list
列表是Python中的一种数据结构,它是可变的、可修改的和可迭代的有序元素序列。它们用于在单个变量中存储多个元素。列表允许重复的元素。
使用items()可以一次提取键和值,从而使搜索变得简单,并且可以使用列表来执行字典中元素的搜索过程。
示例
在这个程序中,我们使用“items()+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
结论
在这篇文章中,我们简要介绍了用于在字典中搜索元素的不同方法。