Python 不同对象比较大小示例探讨

时间:2021-05-22

万恶的源泉:

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章