# -*- coding: utf-8 -*-# @Time : 2025/4/4 16:05# @Author : write1994# @File : lear_Fibonacci_sequence.py# @Desc : 斐波那契数列'''
已知一个数列:1、1、2、3、5、8、13、。。。。的规律为从 3 开始的每一项都
等于其前两项的和,这是斐波那契数列。求满足规律的 100 以内的所以数据
'''
a =0
b =1while b <100:print(b, end=",")
a, b = b, a + b
# 方法一:使用递归函数deffibonacci_recursive(n):if n <=1:return n
else:return fibonacci_recursive(n -1)+ fibonacci_recursive(n -2)# 打印前 10 个斐波那契数for i inrange(10):print(fibonacci_recursive(i))# 方法二:使用循环deffibonacci_loop(n):if n <=1:return n
a, b =0,1for _ inrange(2, n +1):
a, b = b, a + b
return b
# 打印前 10 个斐波那契数for i inrange(10):print(fibonacci_loop(i))deffibonacci_generator():
a, b =0,1whileTrue:yield a
a, b = b, a + b
# 方法三:使用生成器# 打印前 10 个斐波那契数
fib = fibonacci_generator()for _ inrange(10):print(next(fib))