python学习 day09 (3月16日)----(生成器推导式)

1生成器

生成器的本质 是迭代器
函数体存的是代码
#存yield 的时候是生成器
  函数生成生成器
python学习 day09 (3月16日)----(生成器推导式)
def fun():
    print(1)
    yield 4
g = fun()
View Code
#碰到return 就结束函数
#碰到 yield 就挂起
python学习 day09 (3月16日)----(生成器推导式)
def fun():
    print(1)
    return 2
def fun():
    print(1)
    yield 4
View Code

三个错误分析

语法分析  语义分析 词法分析

生成器的两种情况

新建一个 用完就没 没了打错

python学习 day09 (3月16日)----(生成器推导式)
def fun():
    print(1)
    yield 4 #我的函数走到这 生成第一个  之前的清空了
    print(2)
    yield 9 #第二部函数走到这
g = fun()  #生成一个生成器
fun()# #生成一个生成器
print(g.__next__() )
print(g.__next__() )# yield后面的
# print(g.__next__() )#迭代器  惰性只能用一个
View Code

直接使用  永不枯竭

python学习 day09 (3月16日)----(生成器推导式)
print(fun().__next__())  #fun()  这样生成 一个生成器
# print(fun().__next__())
print(fun().__next__())#fun()又重新生成一个生成器 若有多个yield 到不了第二个
View Code

 

 



上一篇:day09


下一篇:day09--函数的定义分类以及其使用(1)