|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
什么是——斐波拉契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda
Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……
代码本体
本人Python小菜鸡,新手一枚,分享自己平时学习的笔记内容
写的不好还请见谅,欢迎大佬指点不足
- def Meth_one(n):
- """
- 第一种方法,也是最标准的方法
- :param n: n为指定的循环次数,可随意修改,建议 10 以上
- :return: 返回为 列表c的值
- """
- a,b=0,1
- c=[]
- for i in range(n):
- c.append(a)
- a,b=b,a+b
- return c
- def Meth_two(n):
- """
- 第二种方法,比较另类,不是以 a 为准,而是以 b 为准的写法,
- 需要一个临时变量 tmp
- :param n: n为指定的循环次数,可随意修改,建议 10 以上
- :return: 返回为 列表c的值
- """
- a,b=0,1
- c=[]
- for i in range(n):
- c.append(b)
- tmp = a
- a,b=b,tmp+b
- return c
- def Meth_three(n):
- """
- 第三种方法,比较高级的写法,使用 yield语法,每获取一个元素就将这个元素送出去
- 好处是并不需要代码运行完成后再来全部一起输出,而是可以先看到前面运行完的内容
- 适用于非常耗时的操作
- :param n: n为指定的循环次数,可随意修改,建议 10 以上
- :return: 这里返回为默认的 None
- """
- a, b = 0, 1
- for i in range(n):
- yield a
- a, b = b, a + b
- print(Meth_one(20))
- print(Meth_two(20))
- #第三种方法需要使用循环将其取出,直接print的话返回的结果是内存地址
- for i in Meth_three(20):print(i)
复制代码 |
|