前戏:列表生成式
等于
用列表生成式生成列表。需要将所有数据生成到内存中,占用空间,如果数据太多。生成数据就会耗时较久。
例如需要运行卡顿一下.....
定义一个生成器:定义时不生成任何数据,只有通过for循环调用,或者生成器本身自带的__next__()方法来调用 。
注意:1、__next__()方法调用时,只能向下调用,无法向上调用。
2、内存中只保存当前调用生成的这一个 数据,已经取(生成)过的数据,无法再次访问。只能再次从头循环取。。
用函数制作一个生成器:yield 关键字
生成器只有__next__()方法
新知识:异常捕获、next内置方法两种用法