生成器
2018-06-10 本文已影响5人
crystalcd
生成器 generator##
-
生成器:一边循环一边计算的机制
定义方法1 g = (x * x for x in range(10)) 定义方法2 如果一个函数定义中包含`yield`关键字,那么这个函数就是一个generator def fib(max): n, a, b = 0, 0, 1 while n <max: yield b a, b = b, a + b n = n + 1 return 'done'
生成器:一边循环一边计算的机制
定义方法1
g = (x * x for x in range(10))
定义方法2
如果一个函数定义中包含`yield`关键字,那么这个函数就是一个generator
def fib(max):
n, a, b = 0, 0, 1
while n <max:
yield b
a, b = b, a + b
n = n + 1
return 'done'