答案:生成器是Python语言中的一种高级特性,它允许我们按需生成一个值序列,而不需要一次性生成整个序列。生成器使用迭代器协议来定义,可以使用 yield 关键字来生成新的值。
生成器在代码中的作用是,它们可以帮助我们有效地处理大型数据集或无限序列,因为它们只在需要的时候才生成数据,而不是一次性生成整个序列。这可以提高程序的性能和效率,并减少内存的使用。
以下是一个简单的示例,该示例演示了如何使用生成器来生成斐波那契数列:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a + b
在上面的代码中,我们定义了一个名为 fibonacci() 的生成器函数,该函数使用 yield 关键字来按需生成斐波那契数列中的下一个数字。由于生成器使用迭代器协议定义,因此我们可以在程序中使用 for 循环来遍历生成器并访问生成的值。