内置函数 不需要导入则可使用的函数
如 abs() all() id() print() type()
内置常量
False True None
内置类型 主要内置类型有数字 序列 映射 类 实例 和异常
逻辑值检测
任何对象都可以进行逻辑值的检测,以便在 if
或 while
作为条件或是作为下文所述布尔运算的操作数来使用。
一个对象在默认情况下均被视为真值,除非当该对象被调用时其所属类定义了__bool__()方法且返回 False
或是定义了__len__() 方法且返回零。 下面基本完整地列出了会被视为假值的内置对象:
-
被定义为假值的常量:
None
和False
。 -
任何数值类型的零:
0
,0.0
,0j
,Decimal(0)
,Fraction(0, 1)
-
空的序列和多项集:
''
,()
,[]
,{}
,set()
,range(0)
布尔运算
and or not
比较运算 < > <= >= == != is is not
数字类型 int float complex
迭代器类型 iterator
可以用内置函数 iter()生成迭代器对象 可以用next()函数逐次输出迭代器对象内容
生成器 generator
在 Python 中,使用了 yield 的函数被称为生成器(generator)。
跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。
在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行
def odd(): print("a") yield 1 #在执行时 遇到yield 就返回 下次执行时 又从上次结束的yield开始 print("b") yield 2 print("c") yield 3 o = odd() for i in o: print(i)
序列类型 list tuple range
可变序列类型 list
不可变序列类型 tuple
不可变序列类型普遍实现而可变序列类型未实现的唯一操作就是对 hash()
内置函数的支持。
range对象 表示不可变的数字序列
文本序列类型 str
集合类型 set frozenset
映射类型 dict