生成器、生成器函数、推导式、生成器表达式

一、生成器

1、本质是迭代器

2、生成器的特点和迭代器一样,取值方式和迭代器一样(__next__(),send():给上一个yield传值)

3、生成器一般由生成器函数和或生成器表达式创建

二、生成器函数

1、含有yield 的函数就是生成器函数

2、遇到yieid 就返回一个值

3、通过__next__()分段执行函数体

4、生成器函数以yield结尾,最后一个yield没有send()传送值

1 def func()
2     print("aaaa")
3     yield 111
4 gen=func()

三、推导式

1、列表推导式

2、字典推导式

3、集合推导式

四、生成器表达式

(结果 for 循环 条件)

特点:

  惰性机制

  只能向前

  节省内存

猜你喜欢

转载自www.cnblogs.com/liaopeng123/p/9468948.html