# 斐波那契数列
def fib(n):
"""
生成斐波那契数列的前n个数字。
参数:
n -- 要生成的斐波那契数列的长度
返回:
生成器,产出斐波那契数列的前n个数字。
"""
a, b = 0, 1 # 初始化斐波那契数列的前两个数字
content = 0 # 初始化已生成的数字数量
while True:
if content >= n: # 当生成的数字数量达到指定长度时,退出循环
break
a, b = b, a + b # 计算下一个斐波那契数字
yield a # 产出当前数字并暂停函数执行
content += 1 # 已生成数字数量加一
# 创建一个斐波那契数列的生成器,旨在生成极大的斐波那契数列
gen = fib(100000000000000000000)
for i in gen:
if i > 1000: # 当生成的斐波那契数字大于1000时,退出循环
break
print(i) # 输出当前斐波那契数字