我有这个元组:
lpfData = ((0.0, 0.0), (0.100000001490116, 0.0879716649651527), ..., (1.41875004768372, 0.481221735477448),..., (45.1781234741211, 0.11620718985796))
我希望找到第二列的最大值。所以我用:
maxLPFt = max(lpfData)
maxLPF = maxLPFt[1]
但我总是得到第二列的值加上第一列的最大值。基本的东西,但谷歌没有帮助。
干杯
若昂
答案 0 :(得分:7)
您可以将函数作为key
参数传递以提取要比较的值†:
import operator
maxLPFt = max(lpfData, key=operator.itemgetter(1))
这将使用每个元组的第二个元素进行计算。
†:与sort
和sorted
的工作方式类似,这就是为什么Sorting HowTo中的信息也可能相关的原因。
答案 1 :(得分:0)
只是为了解决Felix Kling的答案,我不能完全感谢你,如果你想在元组中挑出一个最大数字,在Felix Kling的代码末尾添加['index']。对于我的应用程序,我需要最大数字,它位于每个元组的第二个索引中。我的代码是:
maxLPFt = max(lpfData, key=operator.itemgetter(1))[1]