由于某些原因
999 < (0, 6, 7, 8)
计算为True
实际上,所有元组似乎都大于所有整数。
根据docs
tuple
或list
的实例只能在每种类型中进行比较。
是否有有关此行为的文档?是否有隐式转换发生?
答案 0 :(得分:2)
当您讨论将元组与其他类型进行比较时,根据您链接的文档:
这些类型之间的顺序比较给出了任意顺序。
因此,听起来这是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'