Python 不同对象比较大小示例探讨
(编辑:jimmy 日期: 2024/11/27 浏览:3 次 )
万恶的源泉:
Fireboo的疑问(当然 lambda 本身写的就有问题):
> filter( lambda x: x > 2, [ 1, [ 1, 2, 3 ], 2, 3 ] ) [[1, 2, 3], 3]
?:
> 1 < [ 1 ] True > int < list True > dict < int < list True
> int < map False
后来几经周折,和 Fireboo 讨论了下,是
1.不同对象比较(除了 number 之外),是按照 type names 比较,
2.当相同类型对象不支持适当比较的时候,采用 address 比较
3.list 与 list, tuple 与 tuple 采用字典序比较
> x = 1 > y = [ 1 ] > type( x ) <type 'int'> > type( y ) <type 'list'> > x < y True
> type( int ) <type 'type'> > type( list ) <type 'type'> > id( int ) 505552912 > id( list ) 505555336 > int < list True
> type( map ) <type 'builtin_function_or_method'> > type( list ) <type 'type'> > map < list True
下一篇:python字符串连接方式汇总