Python学习(十五)--生成器

        生成器是一种用普通的函数语法定义的迭代器。任何包含yield语句的函数称为生成器。生成器在每次调用next()的时候执行,遇到yield语句返回,再次执行时就从上次返回的yield语句处继续执行。但是我们创建一个生成器以后,基本上不会调用next()方法,而是通过for循环来迭代它。
 
nested = [[1,2],[3,4],[5]]
 
def flatten(nested):
    for sublist in nested:
        for element in sublist:
            yield element
 
 
for num in flatten(nested):
    print num 
posted @ 2018-07-08 15:38  木九九  阅读(145)  评论(0编辑  收藏  举报