2

我试图在列表中找到最大元素,但是当列表包含另一个列表项时发现了一些奇怪的东西。

代码.py

a=[[1,2],3,4]
max(a)
[1,2]

max 函数在上述工作中是如何工作的?

如何将列表元素假定为最大元素...

谢谢你的帮助。

4

1 回答 1

4

在 Python 2 中,无法比较的类型之间的比较会返回无意义(但一致)的结果:

>>> [1,2] > 3
True

max使用这些比较来找到最大的元素,在这种情况下恰好是列表。

在 Python 3 中得到修复,您将获得:

>>> max([1,2], 3, 4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unorderable types: int() > list()
于 2013-04-20T22:30:56.850 回答