Python 斐波那契数列:while 循环写法与数学公式
在 Python 中,只需几行代码就能实现著名的 斐波那契数列(Fibonacci Sequence)。
这既是算法入门的经典示例,也是理解「递推」与「循环」的重要案例。
📘 数学表达式
数学上,斐波那契数列定义为:
其中:
即:
每一项都是前两项的和。
示例:
💻 Python 实现(while 循环)
a, b = 0, 1
while a < 10:
print(a)
a, b = b, a + b运行结果:
0
1
1
2
3
5
8🧠 代码解析
1️⃣ 初始化变量
a, b = 0, 1a表示当前项,b表示下一项。- Python 支持多重赋值(元组解包)。
2️⃣ 循环条件
while a < 10:- 当
a小于 10 时继续执行循环。
3️⃣ 打印并更新
print(a)
a, b = b, a + b-
打印当前项;
-
再同时更新
a与b,相当于:temp = a a = b b = temp + b
🚀 执行过程演示
| 步骤 | a(当前项) | b(下一项) | 输出 |
|---|---|---|---|
| 1 | 0 | 1 | 0 |
| 2 | 1 | 1 | 1 |
| 3 | 1 | 2 | 1 |
| 4 | 2 | 3 | 2 |
| 5 | 3 | 5 | 3 |
| 6 | 5 | 8 | 5 |
| 7 | 8 | 13 | 8 |
🔍 延伸写法
✅ 输出一行:
while a < 100:
print(a, end=' ')
a, b = b, a + b✅ 封装成函数:
def fibonacci(limit):
a, b = 0, 1
while a < limit:
print(a, end=' ')
a, b = b, a + b🧮 公式与程序的关系
| 形式 | 表达方式 | 特点 |
|---|---|---|
| 数学表达式 | 抽象、递推定义 | |
| Python 程序 | a, b = b, a + b | 具体、可计算 |
| 数学初始条件 | 确定序列起点 |
✅ 总结
| 要点 | 说明 |
|---|---|
| 核心公式 | |
| Python 实现 | while 循环 + 多变量赋值 |
| 特点 | 简洁、高效、可无限生成 |
| 学习价值 | 理解递推思想与状态更新 |
最后更新于