{site_name}

{site_name}

🌜 搜索

在 Python 中,可以使用生成器函数来创建新的迭代器

Python 𝄐 0
python3 迭代器 生成器,python迭代器的__next__方法,python中的迭代器与生成器,python自定义迭代器,python迭代器定义,python迭代器和生成器的作用
在 Python 中,可以使用生成器函数来创建新的迭代器。生成器函数是一种特殊类型的函数,它在执行时会暂停并保留当前的状态,以便下次调用时可以从上次暂停的位置继续执行。

要创建一个生成器函数,只需使用 yield 关键字而不是 return 关键字来返回值。每次调用生成器函数时,它都会返回一个新的值,并在暂停时保存当前状态。这使得生成器函数非常适合处理大量数据或无限数据流。

以下是一个简单的示例,演示如何使用生成器函数创建一个迭代器,在每个调用中返回斐波那契数列的下一个数字:

python
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b

fib = fibonacci()
for i in range(10):
print(next(fib))


此代码将输出斐波那契数列的前 10 个数字:0、1、1、2、3、5、8、13、21 和 34。注意,生成器函数 fibonacci() 不会停止,因为它使用了一个无限循环。如果需要生成有限数量的值,则必须在某个条件下明确停止生成器函数的执行。