def fibonacci(n): # 生成器函数 - 斐波那契 a, b, counter = 0, 1, 0 while True: if (counter > n): return yield a a, b = b, a + b counter += 1
时间: 2024-02-14 20:09:49 浏览: 101
这是一个生成斐波那契数列的Python函数,它使用了yield语句来实现生成器函数。该函数接受一个参数n,表示生成斐波那契数列的长度,然后无限循环生成斐波那契数列中的每个数,直到生成完n个数为止。在循环中,a和b分别表示当前斐波那契数列中的前两个数,counter表示已生成的数的个数。在每次循环中,首先判断是否已经生成了n个数,如果是,则返回函数。否则,使用yield语句将当前数a返回给调用者,并更新a和b的值,继续生成下一个斐波那契数。
阅读全文