Skip to main content
 首页 » 编程设计

python之查找元组中最小元素的最大值

2025年05月04日16EasonJim

如果我有一个列表

[[209, 34], [50, 170], [197, 32], [75, 156], [176, 51], [54, 141], [205, 19], [35, 173]] 

我将如何找到具有最大最小元素的子列表?

即,在上述情况下,它将是 index[3] - [75,156] 因为它的最小值大于所有其他元素的最小值。

请您参考如下方法:

它应该像这样简单:

max(list_of_iterables, key=min) 

即:

>>> lst = [[209, 34], [50, 170], [197, 32], [75, 156], [176, 51], [54, 141], [205, 19], [35, 173]] 
[[209, 34], [50, 170], [197, 32], [75, 156], [176, 51], [54, 141], [205, 19], [35, 173]] 
>>> max(lst, key=min) 
[75, 156] 

max(和min)函数的工作方式是遍历一个可迭代对象并比较可迭代对象中的每个元素,为 min< 选择最大(或最小)的元素) 元素。要注意的是,比较的对象是应用于单个元素的 key 函数的结果。默认情况下,key 函数只是身份函数——但它可以是您想要的任何东西。在这种情况下,我的关键函数是 min,它会挑选出子列表的最小值。然后我们根据它们的最小值比较子列表并挑选出 max 这正是您的问题所要求的。