从两个 Python 列表中查找最大值和最小值


引言

Python 目前被广泛认为是最灵活的编程语言之一,它提供了大量的内置函数和方法,可简化复杂的任务。在本文中,我们将深入探讨如何使用这些原生功能快速查找两个 Python 列表中的最大值和最小值。无论我们是一个初学者还是一个经验丰富的程序员,了解如何利用这些功能都能显著精简我们的代码。

从两个 Python 列表中查找最大值和最小值

在我们探讨如何从两个单独的列表中查找最大值和最小值之前,让我们首先熟悉 Python 提供的相应函数。这种方法非常适合较小的数据集;不过,在处理更大数据集大小时可能并不理想。出于此目的,另一种高级算法方法可能运行良好,并且需要更深入的探索。

语法

  • 'max()' − 此函数返回可迭代对象(例如列表)中最高的值,或者如果提供了多个参数,则返回最大的参数。

  • 'min()' − 相反,此函数返回可迭代对象或提供的多个参数中的最小值。

然后继续讨论如何识别涉及两个不同列表的不同方法中的最大值和最小值,

方法

方法 1:使用 min 和 max 函数

方法 2:使用 zip 函数

方法 3:使用 lambda 函数

方法 1:Python 程序使用 min 和 max 函数从两个 Python 列表中查找最大值和最小值

考虑有两个包含整型元素的单独列表 A 和 B。为了轻松确定它们的最大值和最小值,我们可以使用预定义的函数。

算法

步骤 1:在这种情况下,通过合并两个列表进行串联(即使用运算符 '+')来创建 Combined_list。

步骤 2:计算最大值和最小值时考虑了每个元素,分别使用 `max()` 和 `min()`。

步骤 3:最后用这些值打印结果。

示例

#Initializing the two lists with integer data types
List_A = [5, 9, 13]
List_B = [7,-3 ,11]
#using the concatenation operator that is “+”, we can add the two lists
Combined_list = List_A + List_B
#with the functions, the user can get the small and high values
maximum_value = max(Combined_list)
minimum_value = min(Combined_list)
#Output is printed using print function
print("Maximum Value:", maximum_value)
print("Minimum Value:", minimum_value)

输出

Maximum Value: 13
Minimum Value: -3

方法 2:使用 zip 函数查找两个 Python 列表中的最大值和最小值

如果我们想要提取两个相关列表之间对应的最大值和最小值,我们可以使用 zip 函数。这种方法特别适用于需要数据比较的应用程序,例如跟踪股票价格或分析不同位置的温度变化。

算法

步骤 1:利用内置 `zip()` 函数对相应元素进行配对,并使用列表推导与 `max()` 和 `min()` 一起使用。

步骤 2:这确保了从合并后的列表中有效提取最大值和最小值。

步骤 3:借助具有两个函数的 zip 函数,计算值,然后使用 print 语句返回该值。

示例

#creating two lists with integer data types
List_X = [2, 8, 10]
List_Y = [5, -4 ,12]
#function is defined with two parameters as inputs to get the minimum and maximum values
maximum_values = [max(x,y) for x,y in zip(List_X,List_Y)]
minimum_values = [min(x,y) for x,y in zip(List_X,List_Y)]

#printing the output values
print("Maximum Values:", maximum_values)
print("Minimum Values:", minimum_values)

输出

Maximum Values: [5, 8, 12]
Minimum Values: [2, -4, 10]

方法 3:使用 lambda 函数从两个列表获取最大值和最小值的 Python 程序

有时,我们在搜索最大值或最小值时可能希望指定其他条件。Python 提供了一个有用的特性,我们可以使用 lambda 函数在这些内置方法中应用谓词。

算法

步骤 1:通过串联合并两个列表,用户可以通过 lambda 函数应用过滤器来找出仅正数。

步骤 2:然后将生成的过滤集合传递给 `min()` 以高效地获取所需的最小值。

步骤 3:`max()` 函数用于获取给定的双列数据结构的最大值。

步骤 4:返回输出。

示例

#list data structure is initialized with both positive and negative numbers
list_p = [9,6,1]
list_q = [2,11 ,-15]
#lambda is always declared along with the filter function
#filter method
filtered_list = list(filter(lambda a: (a > 0), list_p + list_q))
#Defining the required function to get the small and high value
minimum_value = min(filtered_list)
maximum_value = max(filtered_list)
#print function will print the output
print("Lowest value:", minimum_value)
print("Highest value:", maximum_value) 

输出

Lowest value: 1
Highest value: 11

结论

Python 丰富的内置功能集可极大简化复杂操作,例如在多个列表中查找最大值和最小值。通过利用上面各种方法中解释的技术,例如独立列表或比较相应元素。使用的函数是 lambda、filter、max 和 min 方法。

更新于: 07-Aug-2023

4K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告
© . All rights reserved.