本文在python 3.5中进行,使用yeild作为generator(生成器),这是一个很常用的方式一次取出一些或一个数据。
我们的yeild使用next()来取出。但记住,如果yeild不执行,yeild后面的函数不会执行。
示例:
def eg_fn(max):
a = [[1,2],[3,4],[5,6],[7,8],[9,10]]
c = 0
while c<= max:
yield a[c:c+1]
c = c+1
eg_test = eg_fn(3)
print(next(eg_test))
# 或者
for n in eg_test:
print (n)