Python 不同对象比较大小示例探讨
万恶的源泉:
Fireboo的疑问(当然lambda本身写的就有问题):
>>>filter(lambdax: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之外),是按照typenames比较,
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