码迷,mamicode.com
首页 > 其他好文 > 详细

生成器

时间:2019-05-08 21:55:27      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:UNC   yield   nbsp   span   获取   不执行   生成器   哈哈哈   return   

def func():
    print(哈哈哈)
    yield 1 # return 和 yield 都可以返回数据
    print(呵呵呵)
gen = func()  # 不会执行你的函数,拿到的是生成器
ret = gen.__next__() # 会执行到下一个yield
print(ret)
gen.__next__() # 继续执行函数到下一个yield
函数中如果有yield 这个函数就是生成器函数,生成器函数() 获取的是生成器,这个时候不执行函数
yield:相当于return,可以返回数据,但是yield不会彻底中断函数,分段执行函数
def order():
    for i in range(100000):
        yield 衣服+ str(i)
g = order() # 获取生成器
mingwei = g.__next__()
print(mingwei)
zhaoyinning = g.__next__()
print(zhaoyinning)

 send() 和 __next__()是一样的,可以执行到下一个yield,可以给上一个yield位置传值

生成器

标签:UNC   yield   nbsp   span   获取   不执行   生成器   哈哈哈   return   

原文地址:https://www.cnblogs.com/Little-Raccoon/p/10834696.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!