一、生成器函数:
常规定义函数,使用yield语句而不是return语句返回结果。yield语句一次返回一个结果。
好处在于,不会一下占用很多内存生成数据。
本质:就是一个迭代器。
python中提供的生成器:1、生成器函数 2、生成器表达式
二、实例:
1 def func(): 2 print('aaaaa') 3 a = 1 4 yield a #第一个返回值 5 print('bbbb') 6 yield 12 #第二个返回值 7 8 ret = func() #获得生成器 9 10 print(next(ret)) #取第一个值 11 print(next(ret)) #取第二个值 12 13 输出: 14 aaaaa 15 1 16 bbbb 17 12
三、列表推导式:
1 y = 2 2 l = [i*y for i in range(51)] 3 print(l)