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

yipeiwu_com6年前Python基础

万恶的源泉:

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

相关文章

对Xpath 获取子标签下所有文本的方法详解

对Xpath 获取子标签下所有文本的方法详解

在爬虫中遇见这种怎么办 想提取名称, 但是 名称不在一个标签里 使用xpath string()方法 例如 data.xpath("string(path)") path --...

Django ImageFiled上传照片并显示的方法

1:首先理解settings.py中 MEDIA_ROOT: MEDIA_URL:这两者之间的关系。 MEDIA_ROOT:就是保存上传图片的根目录,比如说MEIDA_ROOT ="C:...

Python通过websocket与js客户端通信示例分析

Python通过websocket与js客户端通信示例分析

具体的 websocket 介绍可见 http://zh.wikipedia.org/wiki/WebSocket  这里,介绍如何使用 Python 与前端 js 进行通信。...

Python字符串切片操作知识详解

一:取字符串中第几个字符 print "Hello"[0] 表示输出字符串中第一个字符 print "Hello"[-1] 表示输出字符串中最后一个字符 二:字符串分割 print...

Python中扩展包的安装方法详解

Python中扩展包的安装方法详解

前言 作为一个pythoner ,包的安装时必须懂的,这个语言跟matlab很类似,开源、共享,只要你有好的方法,都可以作为一个库,供大家下载使用,毕竟俗话说:"人生苦短,请用Pytho...