视为假
None False 0 0L 0.0 0j '' () [] {}
此外如果是自定义的类,其中定义了nonzero或len返回了False或0。
比较
and or not < <= > >= == != is is not
可在自定义类中添加eq,cmp,le,gt,ge
Number
有四种,int long float complex,Boolean是int的子类
int [-sys.maxint-1, sys.maxint]
float 对应c语言中的double
long 无限制长度
complex的实部和虚部都是float
字面量根据其中是否有小数点分别视为int和float
如果int有后缀L视为long
如果有j视为虚部
int() long() float() complex()
支持的操作:
+-*/ // % - + abs divmod pow **
iterator
iter
next
seq
set
map
file
memoryview
context manager
other built-in module
Modules
name
dict
class and instance
function
func(arg)
支持任意属性的绑定
methods
im_self
im_func
有一个m方法,绑定到了object上(bound)
m(arg_1, ... , arg_n) 即为 m.im_func(m.im_self, arg_1, ..., arg_n)
如果使用class而直接调用方法,此时该方法未绑定(unbound),其im_self为None,必须显示传递self。
m.im_func也支持任意属性的绑定