# Python 程序：使用递归显示斐波那契数列

> 原文： [https://www.programiz.com/python-programming/examples/fibonacci-recursion](https://www.programiz.com/python-programming/examples/fibonacci-recursion)

#### 在此程序中，您将学习使用递归函数显示斐波那契数列。

要理解此示例，您应该了解以下 [Python 编程](/python-programming "Python tutorial")主题：

*   [Python `for`循环](/python-programming/for-loop)
*   [Python 函数](/python-programming/function)
*   [Python 递归](/python-programming/recursion)

* * *

斐波那契数列是 0、1、1、2、3、5、8 ...的整数序列。

前两项是 0 和 1。所有其他项都是通过将前两项相加而获得的。这意味着第 n 个项是第（`n-1`）项和第（`n-2`）项的总和。

* * *

## 源代码

```py
# Python program to display the Fibonacci sequence

def recur_fibo(n):
   if n <= 1:
       return n
   else:
       return(recur_fibo(n-1) + recur_fibo(n-2))

nterms = 10

# check if the number of terms is valid
if nterms <= 0:
   print("Plese enter a positive integer")
else:
   print("Fibonacci sequence:")
   for i in range(nterms):
       print(recur_fibo(i)) 
```

**输出**

```py
Fibonacci sequence:
0
1
1
2
3
5
8
13
21
34 
```

**注意**：要测试程序，请更改`nterms`的值。

在此程序中，我们将要显示的术语数存储在`nterms`中。

递归函数`recur_fibo()`用于计算序列的第 n 个项。 我们使用`for`循环来迭代并递归计算每个项。

请访问此处以了解有关 Python 中[递归的更多信息](/python-programming/recursion "Python recursion")。