在 Python 中打印具有最高值的嵌套列表的正确方法是什么?



我有一个嵌套列表,我正在尝试获取总和并打印各个数字相加时具有最高数值的列表

x = [[1,2,3],[4,5,6],[7,8,9]]
highest = list()
for i in x:
    highest.append(sum(i))
for ind, a in enumerate(highest):
    if a == max(highest):
        print(x[ind])

我已经能够打印出结果,但我认为应该有一种简单且更 Python 的方法(也许使用列表理解)。

我该怎么做?

怎么样:

print(max(x, key=sum))

演示:

>>> x = [[1,2,3],[4,5,6],[7,8,9]]
>>> print(max(x, key=sum))
[7, 8, 9]

这是因为max(以及许多其他python内置,如minsort...)接受用于比较的函数。 在这种情况下,我只是说我们应该根据它们各自的sum来比较x中的元素,鲍勃的叔叔,我们完成了!

最新更新