目录
  • python实现斐波那契数列
    • 利用for循环来实现
    • 使用while循环来实现
    • 递归
  • python编写函数求斐波拉契数列(0、1、1、2、3、5、8、..)并求用户输入的前x项之和
    • 什么是斐波那契数列
    • 斐波那契数列规律
    • 斐波那契数列的代码实现
  • 总结

    python实现斐波那契数列

    利用for循环来实现

    核心:python列表中可以用-1,-2来索引和访问倒数第一个数和倒数第二个数。

    fibs = [1,2] for i in range(8): fibs.append(fibs[-2] + fibs[-1]) print(fibs)

    运行结果:

    运行结果

    range中的参数代表此for循环的循环次数。

    使用while循环来实现

    i = 0 j = 1 while i<10000 print(i,end = ' ') i,j = j,i+j

    运行结果:

    在这里插入图片描述

    i,j = j,i+j 是并列赋值,一开始竟然看成由逗号隔开的三个东西,然后想了好久,服了。

    递归

    def fibs(n): if n < 1: return -1 elif n==1 or n==2: return 1 else: return fibs(n-1) + fibs(n-2) num = int(input('input num:')) for i in range(1,num+1): print(fibs(i),end=' ')

    递归函数里面的话得到的只是你输入个数的那个最大的斐波那契数,输出的话是需要一个一个输出的,就是用for循环输出。

    python编写函数求斐波拉契数列(0、1、1、2、3、5、8、..)并求用户输入的前x项之和

    什么是斐波那契数列

    斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”

    指的是这样一个数列:

    0、1、1、2、3、5、8、13、21、34、……

    在数学上,斐波那契数列以如下被以递推的方法定义:

    F(1)=1 F(2)=1 F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)

    斐波那契数列规律

    除了第一项和第二项外,从第三项开始,每一项都等于前两项之和

    斐波那契数列的代码实现

    用Python编写函数求斐波拉契数列(0、1、1、2、3、5、8、…)并根据用户输入的前x项进行求和

    def fib(n): list = [0,1] a,b = 0,1 for i in range(2,n+1): a,b=b,a+b list.append(b) return list while True: try: x = int(input('请输入斐波那契数列的长度:')) if x <= 0: print('长度输入不合法!') continue else: sum = 0 list = fib(x) # 调用前面写的fib函数 print('前{}项的斐波那契数列是:'.format(x)) for j in range(0,x): print(list[j],end=' ') sum = sum + list[j] # 求和 print ('\n') print('前{}项的斐波那契数列之和是:\n{}'.format(x,sum)) break except ValueError: print ('长度输入不合法!') continue

    执行结果:

    请输入斐波那契数列的长度:20
    前20项的斐波那契数列是:
    0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持本网站。

    您可能感兴趣的文章:

    • Python实现斐波那契数列的多种写法总结
    • Python/R语言分别实现斐波那契数列的示例详解
    • 使用python求斐波那契数列中第n个数的值示例代码
    • 利用Python实现斐波那契数列的方法实例
    • python3实现斐波那契数列(4种方法)
    • 如何使用Python实现斐波那契数列