int 和 tuple 比较的行为

Behaviour of comparison between int and tuple

出于某种原因

999 < (0, 6, 7, 8)

计算结果为 True

事实上,所有元组似乎都大于所有整数。

根据 docs

Instances of tuple or list can be compared only within each of their types.

是否有针对此行为的文档?是否发生了一些隐式转换?

根据您链接的文档,当它讨论将元组与其他类型进行比较时:

ordering comparison across these types gives an arbitrary order.

因此,听起来这种行为在 Python 2 中未定义(如果我错了请纠正我)。在 Python 3 中进行相同的比较会出现以下错误:

Traceback (most recent call last):
  File "main.py", line 1, in <module>
    print(999 < (0, 6, 7, 8))
TypeError: '<' not supported between instances of 'int' and 'tuple'