python笔记七(递归函数)

Posted nadech

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python笔记七(递归函数)相关的知识,希望对你有一定的参考价值。

在介绍递归函数之前,我们先介绍以下递归函数的使用有以下特征:

1.递归函数就是函数在函数体内部调用本身

2.递归函数的运算规模要不断减小,这样才是可以运算的

3.递归的层数不要超过999,因为函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。调用层数过多就会导致栈溢出。

4.理论上所有的递归函数都可以用循环来表示,但是递归更形象易于理解(虽然我更习惯使用循环~~~~)

>>> def factorial(n):
...     if n ==1:
...         return 1
...     else:
...         return n*factorial(n-1)
...
>>> factorial(5)
120

以上代码我们通过循环来实现~~~~~

>>> def factorial(n):
...    fac=1
...    while n>1:
...        fac=fac*n
...        n-=1
...    return fac
>>> factorial(5)
120

 

以上是关于python笔记七(递归函数)的主要内容,如果未能解决你的问题,请参考以下文章

Python学习笔记七:函数

python学习笔记七:条件&循环语句

Python学习笔记__2.4章 递归函数

Python基础笔记:函数:调用函数定义函数函数的参数递归函数

python笔记19-递归调用

Go语言学习笔记七: 函数