python用列表方法求斐波拉契数列
时间: 2024-01-29 18:04:52 浏览: 30
以下是使用列表方法求斐波那契数列的Python代码:
```python
def fibonacci(n):
# 定义一个空列表用于存储斐波那契数列
fib_list = []
# 前两个斐波那契数列的数为0和1
a, b = 0, 1
# 循环n次,每次计算下一个斐波那契数并添加到列表中
for i in range(n):
fib_list.append(a)
a, b = b, a + b
return fib_list
# 测试
print(fibonacci(10))
```
输出结果:
```
[0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
```
上述代码通过循环n次计算斐波那契数列中的每一个数,并将其添加到一个空列表中,最后返回该列表。列表方法使得代码简洁高效,而且易于理解。
相关问题
用python求斐波那契数列和斐波那契数列和
以下是两种Python求斐波那契数列和的例子:
1. 求斐波那契数列前n项和
```python
def fibonacci_sum(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
a, b = 0, 1
sum = 1
for i in range(2, n+1):
c = a + b
sum += c
a, b = b, c
return sum
# 示例
print(fibonacci_sum(10)) # 输出:143
```
2. 求斐波那契数列第n个数的值
```python
def fibonacci(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
a, b = 0, 1
for i in range(2, n+1):
c = a + b
a, b = b, c
return b
# 示例
print(fibonacci(10)) # 输出:55
```
python使用递归方式求斐波拉契数列
Python也可以使用递归的方式求解斐波那契数列,示例代码如下:
```python
def fibonacci(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
# 测试
print(fibonacci(0)) # 0
print(fibonacci(1)) # 1
print(fibonacci(10)) # 55
```
这个函数接收一个正整数n作为参数,如果n小于等于0,则返回0;如果n等于1,则返回1;否则返回fibonacci(n-1)加上fibonacci(n-2)的值。这个函数会一直递归调用自己,直到n小于等于1,最终返回结果。