云计算开发学习笔记:Python3斐波纳契数列

  • 来源:网络
  • 更新日期:2020-07-22

摘要:在前面的教程中我们已经学习了一些 Python3 的基本语法知识,下面我们尝试来写一个斐波纳契数列。 其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边

在前面的教程中我们已经学习了一些 Python3 的基本语法知识,下面我们尝试来写一个斐波纳契数列。

其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于:

执行以上程序,输出结果为:

这个例子介绍了几个新特征。

第一行包含了一个复合赋值:变量 a 和 b 同时得到新值 0 和 1。最后一行再次使用了同样的方法,可以看到,右边的表达式会在赋值变动之前执行。右边表达式的执行顺序是从左往右的。

输出变量值:

end 关键字

关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下:

执行以上程序,输出结果为:

递归方式

下面使用递归方式求斐波纳契数列

其实递归就是函数内部调用自身。

使用 print(fab(num)) #num 是一个数字,可用递归方式求输入数字的斐波纳契结果:

递归方式在很大程度上牺牲了空间换取了可读性。每次调用递归函数的时候都会创建一个函数栈,如果递归深度过大,则会造成溢出状况。而使用a,b = b,a+b 方法求斐波那契数列,占用空间少,来回只有两个变量的空间占用,很方便。

新网箭头云服务器