我有这个元组列表的列表
var1 = [
[(10, '♣'), (7, '♠')],
[(14, '♣'), (2, '♣')],
[(2, '♥'), (9, '♦')],
[(11, '♠'), (10, '♠')],
[(11, '♦'), (5, '♣')]
]
我想提取具有第二个值或var1 [1]的最大值的元组。我在编程过程中使用了很多不同的代码,但是我现在使用的代码直到现在一直没有任何重大问题是:
maximo = max(var1, key=lambda x: sum(i for i,_ in x))
还有这个:
maximo2 = list(map(max,zip(*var1)))
问题是我需要具有最大值的列表,而不是具有2个最大值的组合的列表,现在此代码var1[3]
将以2个值中的较大者输出,我不知道还要尝试什么。
使用max
代替sum
例如:
var1=[[(10, '♣'), (7, '♠')], [(14, '♣'), (2, '♣')], [(2, '♥'), (9, '♦')], [(11, '♠'), (10, '♠')], [(11, '♦'), (5, '♣')]]
maximo=max(var1, key=lambda x: max(i for i,_ in x))
print(maximo)
输出:
[(14, '♣'), (2, '♣')]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句