Python int和tuple之间的比较行为

Python int和tuple之间的比较行为,python,python-2.x,Python,Python 2.x,出于某种原因 999 < (0, 6, 7, 8) 999

出于某种原因

999 < (0, 6, 7, 8)
999<(0,6,7,8)
计算结果为
True

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

据报道,

元组
列表
的实例只能在每种类型内进行比较


有关于这种行为的文件吗?是否发生了隐式转换?

根据您链接的文档,在讨论元组与其他类型的比较时:

通过对这些类型进行排序比较,可以得出任意顺序

因此,在Python2中似乎没有定义这种行为(如果我错了,请纠正我)。在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'
回溯(最近一次呼叫最后一次):
文件“main.py”,第1行,在
打印(999<(0,6,7,8))

TypeError:'不确定您是如何运行的,因为这会产生一个
TypeError
请从Python2升级到python 3No casting,它(不合逻辑地)偏离了2.7中类型名称的词汇顺序。我们在Python3中消除了这一点。