> 文档中心 > Python数学计算工具3、Python 斐波那契数列-前500项列表

Python数学计算工具3、Python 斐波那契数列-前500项列表

百度解析:

斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)在现代物理、准晶体结构、化学等领域,斐波那契数列都有直接的应用,为此,美国数学会从 1963 年起出版了以《斐波那契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

斐波那契数列是一个非常基础的算法,这个算法无论是在面试题中,平时的解题过程中都会无数次的见到,我们要对这个问题深度熟悉才能更好的应对这种问题。

我们先来看看基础的斐波那契数列的遍历,我们先遍历一下前10个斐波那契数,这个是基础方法:

one = 0two = 1nth = 1for i in range(0, 10):    print(nth)    nth = one + two    one = two    two = nth

递归方法,一般就能返回1个结果,用于计算某个位置上的斐波那契数。

def dfs(n):    if n == 1 or n == 2: return 1    return dfs(n - 1) + dfs(n - 2)print(dfs(10))

保存前500的斐波那契数列结果:

# 排列前500斐波那契额数列import osos.system("title 排列前500斐波那契额数列:")one = 0two = 1nth = 1str_list = []for i in range(0, 500):    nth = one + two    one = two    two = nth    str_list.append(nth)count = 0str1 = []with open("斐波那契数列前500个数.txt", "w+", encoding="utf-8") as file:    for item in str_list: count += 1 str1.append("{0}、{1}\n".format(count, item))    file.writelines(str1)    file.flush()

示例包下载地址:

https://download.csdn.net/download/feng8403000/86949967

下面是打包过程:

使用打包工具:【pip install pyinstaller】

安装完成后注意使用语法:

pyinstaller -F -p D:\save\Exe\studys\Python\exe\Lib -i D:\save\myclass\Python\core\pythonProject\python.ico demo5.py -n " 排列前500斐波那契额数列" 

可以看到我使用了2个绝对路径,绝对路径1是Python环境的包所在的位置,如果包不全的话需要自己通过pip进行下载,建议修改完镜像位置再下载。不会也别着急,每篇违章后面都会有打包教程。操作次数多了也就会了。

执行完成我们看到【successfully】代表成功了。