🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Python 程序:打印斐波那契序列 > 原文: [https://www.programiz.com/python-programming/examples/fibonacci-sequence](https://www.programiz.com/python-programming/examples/fibonacci-sequence) #### 在此程序中,您将学习使用`while`循环打印斐波那契数列。 要理解此示例,您应该了解以下 [Python 编程](/python-programming "Python tutorial")主题: * [Python `if...else`语句](/python-programming/if-elif-else) * [Python `while`循环](/python-programming/while-loop) * * * 斐波那契数列是 0、1、1、2、3、5、8 ...的整数序列。 前两项为 0 和 1。所有其他项均通过将前两项相加而获得。 这意味着第 n 个项是第(`n-1`)个和第(`n-2`)个项的总和。 ## 源代码 ```py # Program to display the Fibonacci sequence up to n-th term nterms = int(input("How many terms? ")) # first two terms n1, n2 = 0, 1 count = 0 # check if the number of terms is valid if nterms <= 0: print("Please enter a positive integer") elif nterms == 1: print("Fibonacci sequence upto",nterms,":") print(n1) else: print("Fibonacci sequence:") while count < nterms: print(n1) nth = n1 + n2 # update values n1 = n2 n2 = nth count += 1 ``` **输出** ```py How many terms? 7 Fibonacci sequence: 0 1 1 2 3 5 8 ``` 在这里,我们将术语数存储在`nterms`中。 我们将第一项初始化为 0,第二项初始化为 1。 如果项数大于 2,我们使用`while`循环通过将前两个项相加来查找序列中的下一个项。 然后,我们交换变量(对其进行更新)并继续进行该过程。 您也可以使用递归解决此问题: [Python 程序:使用递归打印斐波那契序列](/python-programming/examples/fibonacci-recursion "Python program to print the Fibonacci sequence using recursion")。