Python生成器

函数中包含yield字段

生成器是一个函数,这个函数每次只产生一个值,所以通常需要配合for in 循环来使用,

def gen(n):
    for i in range(n):
        i = i*i
        yield i
 
def foo(n):
   for i in gen(n):
     print(i,' ',end='')

foo(5)

冻结 / 唤醒,循环调用生成器这个函数,每次在上一次的基础上继续进行运算生成新的值

第几次调用它,它就第几次生成新值

动态生成列表内的值,可以节省空间,更加灵活,更快的响应速度

posted @ 2018-11-28 21:36  挑灯看剑l  阅读(132)  评论(0编辑  收藏  举报