为什么元组大于类似的列表?

ser*_*ach 11 python python-2.7

有没有理由为什么下一个元组比列表更大?

>>> t = ( 1, 2, 3 )
>>> l = [ 1, 2, 3 ]
>>> t > l
True
>>> t < l
False
Run Code Online (Sandbox Code Playgroud)

Dan*_*man 17

在Python 2中,任何元组总是被比较为任何列表 - 这就是它在语言中定义的方式.

在Python 3中,这是固定的,因此比较元组和列表给出TypeError: unorderable types: tuple() > list().

  • 供参考......:`sorted([dict,set,frozenset,tuple,list])`给``[<type'set'>,<type'freezeset'>,<type'dict'>,<type'列表'>,<type'tuple'>]` - 显然元组是最好的类型!:) (9认同)

Len*_*bro 9

没有没有充分的理由,这是令人困惑的,这就是为什么它不像Python 3那样工作.