包含yield语句的函数会被特地编译为生成器函数;当函数被调用时,他们返回一个生成器对象,这个对象支持迭代器接口。函数也许会有个return语句,但它的作用是用来yield产生值的。举例如下:
1 >>> def g(n): 2 for i in range(n): 3 yield i**2; 4 5 6 >>> for i in g(5): 7 print (i,":"); 8 9 10 0 : 11 1 : 12 4 : 13 9 : 14 16 : 15 >>>
时间: 2024-10-26 13:47:51