码迷,mamicode.com
首页 > 编程语言 > 详细

python的生成器与yield

时间:2017-12-26 21:58:39      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:gen   log   file   一个   需要   std   获取   python   ast   


一个包含yield的函数,执行后可以获取一个需要next来推动执行的代码流。
代码流好比牙膏,next好比在挤牙膏。
def odd():
    print(step 1)
    yield 1
    print(step 2)
    yield(3)
    print(step 3)
    yield(5)

 

调用该generator时,首先要生成一个generator对象,然后用next()函数不断获得下一个返回值:

>>> o = odd()
>>> next(o)
step 1
1
>>> next(o)
step 2
3
>>> next(o)
step 3
5
>>> next(o)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
StopIteration

 

python的生成器与yield

标签:gen   log   file   一个   需要   std   获取   python   ast   

原文地址:https://www.cnblogs.com/wllhq/p/8119988.html

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