python for yield语句
时间: 2023-10-31 07:54:04 浏览: 78
yield表达式.pdf
在Python中,yield语句一般与循环体共同使用,用于创建生成器(generator)。生成器是一种特殊的函数,它在每次调用next()的时候执行,并且遇到yield语句时返回,再次执行时从上次返回的yield语句处继续执行。通过使用yield语句,我们可以方便地实现类似迭代的效果。
例如,我们可以使用yield语句来生成斐波那契数列。下面是一个使用yield语句的生成器函数的示例:
```python
def fab(max):
n, a, b = 0, 0, 1
while n < max:
yield b
a, b = b, a + b
n += 1
for m in fab(5):
print(m)
```
在这个示例中,通过yield关键字,我们可以在每次循环中返回斐波那契数列中的下一个元素。当我们使用for循环迭代fab(5)时,会依次打印出斐波那契数列的前5个数。
总结起来,yield语句在Python中被用于创建生成器,它能够让函数在每次调用next()时返回一个值,并在下一次调用时从上次中断的地方继续执行。这种机制使得通过生成器来实现迭代非常方便和高效。
阅读全文