一、生成器 gennerator
方法:将列表生成式的[ ] 改成 ( )
通过next( ) 函数获取generator 的下一个返回值
通过for 循环 打印输出 generator
当类似列表生成式的 for 循环无法实现的时候,还可以用函数来实现:将print(b)改为 yield b
通过创建一个generator 对象 ,利用for 循环 然后对generator对象进行输出
通过捕获 stopiteration 错误 拿到返回值
二、迭代器
可以直接作用于for循环的被称之为可迭代对象:iterable
使用isinstance( ) 判断一个对象是否 iterable 对象
from collections.abc import Iterable:这行代码的作用是将collections.abc模块中的Iterable类导入到当前代码的命名空间中,这样 Python 才能识别Iterable。
next( )函数调用并不断返回下一个值的对象称为迭代器:Iterator
将 iterable 变成 iterator 可以使用 iter( )
凡是可用作for 循环的都是iterable
凡是可用作next( )函数的对象都是iterator
三、高阶函数
变量可以指向函数
函数名也是变量
要让修改abs变量的指向在其它模块也生效,要用 impo builtins;builtns.abs = 10
传入函数
高阶函数