Python程序:查找字典中最大值元组的键
查找Python字典中最大值元组的键,意味着识别与所有元组中值最高的元组关联的键。这对于从数据中检索最重要或最相关的信息非常有用。
示例
假设我们已经输入了一个字典,其值是元组。我们现在将使用上述方法查找输入字典中最大值元组的键。
输入
inputDict = {'hello': ("p", 2), 'tutorialspoint': ("c", 15), 'python': ("k", 8)}
输出
The key of the maximum value in a tuple: tutorialspoint
在上面的输入字典中,元组中的最大值是15,其对应的键是tutorialspoint。
使用的方法
以下是完成此任务的各种方法
使用列表推导式、max()和values()函数
使用max()、values()和next()函数
方法1:使用列表推导式、max()和values()函数
在这种方法中,我们将了解如何使用列表推导式、max()和min()函数来查找字典中最大值元组的键。
列表推导式
当您希望基于现有列表的值构建新列表时,列表推导式提供了一种更短/简洁的语法。
new_list = [expression for item in iterable if condition]
max()函数
max()方法(返回可迭代对象中最高值项目/最大数字)。
max_value = max(iterable)
dict.values()函数
dict.values()方法提供一个视图对象,按插入顺序显示字典中所有值的列表。
value_list = dictionary.values()
items()函数返回一个视图对象,即包含字典的键值对,作为列表中的元组。
算法(步骤)
以下是执行所需任务的算法/步骤:
创建一个变量来存储包含元组作为值的输入字典。
打印输入字典。
将给定的字典和键作为lambda函数传递,以查找字典的最大值。
使用items()函数和列表推导式迭代字典的键值对,获取具有上述最大值的键。
打印元组中最大值的字典键的结果。
示例
以下程序使用列表推导式、max()和values()函数返回元组中最大值的字典键
# input dictionary having values as tuples
inputDict = {'hello': ("p", 2), 'tutorialspoint': ("c", 15), 'python': ("k", 8)}
# printing input dictionary
print("Input dictionary:", inputDict)
# getting the maximum value from the values of the input dictionary
# i.e, tuple
maximumValue = max(inputDict.values(), key=lambda k: k[1])
# getting key with maximum value using list comprehension
maxKey = [k for k, v in inputDict.items() if v == maximumValue][0]
# printing the resultant dictionary key of the maximum value in a tuple
print("The key of the maximum value in a tuple: ", maxKey)
输出
执行上述程序后,将生成以下输出
Input dictionary: {'hello': ('p', 2), 'tutorialspoint': ('c', 15), 'python': ('k', 8)}
The key of the maximum value in a tuple: tutorialspoint
方法2:使用max()、values()和next()函数
此方法将演示如何在Python中使用max()、value()和next()函数来查找字典中最大值元组的键。
lambda函数
lambda函数是一个小的匿名函数。
lambda函数可以有无限个/任意数量的参数,但只有一个表达式。
语法
lambda arguments : expression
next()函数
返回迭代器(如列表、字符串、元组等)中的下一个项目。如果可迭代对象到达其末尾,您可以添加默认返回值来返回。
语法
next(iterable, default)
算法(步骤)
以下是执行所需任务的算法/步骤
创建一个变量来存储包含元组作为值的输入字典。
打印输入字典
通过将给定的字典和键作为lambda函数传递来获取字典的最大值。
使用next()函数遍历给定的字典项,并使用上面的max变量查找具有最大值的键。
打印元组中最大值的字典键的结果。
示例
以下程序使用max()、values()和next()函数返回元组中最大值的字典键
# input dictionary having values as tuples
inputDict = {'hello': ("p", 2), 'tutorialspoint': ("c", 15), 'python': ("k", 8)}
# printing input dictionary
print("Input dictionary:", inputDict)
# Getting maximum value from the dictionary using max() function
maximumValue = max(inputDict.values(), key=lambda k: k[1])
# Getting the maximum value key using the next() function
maxKey = next(k for k, v in inputDict.items() if v == maximumValue)
# printing the resultant dictionary key of the maximum value in a tuple
print("The key of the maximum value in a tuple: ", maxKey)
输出
执行上述程序后,将生成以下输出
Input dictionary: {'hello': ('p', 2), 'tutorialspoint': ('c', 15), 'python': ('k', 8)}
The key of the maximum value in a tuple: tutorialspoint
结论
在本文中,我们学习了两种不同的方法来查找字典中最大值元组的键。使用字典,我们学习了如何使用items(.)在字典的元素之间进行遍历。此外,我们学习了如何使用next()函数向字典添加迭代器。最后但并非最不重要的一点是,我们学习了如何在max()函数中使用任何自定义函数作为键。
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP