Python 寻找字典中的最大元素
字典用于存储键值对形式的数据值,类似于映射(与其他数据类型不同,映射只持有单个元素作为值)。字典提供了键:值形式,使其更加有效。
键是唯一的。字典键必须是唯一的。因此,字典中不允许存在重复的值。字典项是有序、可更改、不可变的。可更改的意思是在创建字典后,可以添加或删除项。
在本文中,我们将了解如何使用不同的函数在字典中查找最大元素。有许多函数可以通过使用不同的方法来查找字典中的最大元素,如“for”和“in”循环,sort()方法,max()函数等。
如何在字典中搜索元素
这里,我们给出了一个数字字典,我们需要使用不同的方法从字典中找到最大元素。有四种方法可以在字典中搜索元素。
- 通过使用“for”和“in”循环
- 通过使用sorted()函数
- 通过使用max()函数
- 通过使用“”运算符
使用“for”和“in”循环
“for循环”用于重复执行一个语句,直到给定条件满足为止。当条件变为假时,立即执行程序中循环后的行。
“in”运算符确定给定的值是否是序列的元素,如字符串、数组、列表、元组或字典。它用于在字典中搜索元素。例如 –
示例
这里,我们有一个程序,我们使用“for循环”在字典中查找最大元素。在这个程序中,我们要搜索存在于字典中的元素的最大值。所以输出是“13”。
names= {"africa ":12, "america":9, "dubai":4, "india":13}
max = max(names.values())
max2= 0
for v in names.values():
if(v>max2 and v==max):
max2 = v
print(" largest element is:",max2)
输出
largest element is: 13
使用Sorted()方法
sorted()函数可以用来对字典进行升序、降序或用户定义的排序。Sorted()方法默认给出列表的升序排序值。因此,当我们要打印输出以找到最大值时,我们需要给出(dict[-1])。Sort()函数用于按字母顺序从A到Z,从a到z对字典进行排序。例如 –
示例
在这个程序中,我们使用了”sorted()”来搜索字典中的最大元素。在这个程序中,我们通过给出reverse=”true”和value为[-1]来搜索元素的最大值,该值存在于字典中。因此,输出为”93和10″。
names= {"alina": 93, "steve": 63, "mike": 76, "robin":89}
print("Output1:", sorted(names.values())[-1])
subject = {"hindi": 20, "english": 12, "maths": 20, "science": 10}
print("Output2:", sorted(set(subject.values()), reverse=True)[-1])
输出
Output1: 93
Output2: 10
通过使用max()
max()函数返回列表中最高元素的值或可迭代对象中的最高值。它用于查找字符串和数字的最高值。例如 –
示例
这里,我们有一个程序,我们在其中使用“max()”来搜索字典中的最大元素。在此程序中,我们必须搜索存在字典中的元素的最大值。因此,输出为“alina”。
names= {"alina": 93, "steve": 63, "mike": 76, "robin":89}
x= max(zip (names.values(),names.keys()))[1]
print("the highest value is", x)
输出
the highest value is alina
使用==
运算符
==
运算符用于比较两个对象的值或相等性。它们也被称为“关系运算符”。如果两个操作数的值相等,条件变为真(a==b
)。如果两个操作数的值不相等,则条件变为假(a不等于b)。在这里,我们将使用==
运算符在一个字典中查找最大的元素。例如−
示例
在这里,我们有一个程序,我们使用==
在一个字典中搜索最大的元素。在这个程序中,我们必须搜索字典中存在的元素的最大值。因此,输出结果为“jaguar”。
import operator
car= {"audi": 100, "bmw": 1292, "jaguar": 210000, "hyundai":89}
x= max(car.items(), key = operator.itemgetter(1))[0]
print("the highest value is", x)
输出
the highest value is jaguar
结论
在本文中,我们简要讨论了在字典中找到最大元素的所有方法。