python递归函数

递归函数,简而言之就是在内部调用自身的函数。

python递归函数

c/c++当中讲到递归函数时,有个非常有名的例子,就是规则地打印星号,我们也可以用Python的递归函数来实现。

递归函数实例

In[1]:
def recurrence(x):
    x = int(x)
    if x >= 1:  #递归函数需要设计一个退出递归的条件判断
        print('*'*x)
        x -= 1
        return recurrence(x) #函数内部调用自己

recurrence(12)
————————————————————————————————————
************  
***********
**********
*********
********
*******
******
*****
****
***
**
*
 

如果想正过来打印型号,可以将代码作如下简单的修改:

In[1]
def recurrence(x,y):
    x = int(x)
    if x <= y:
        print('*'*x)
        x += 1
        return recurrence(x,y)
        
recurrence(5,18)
————————————————————————————————————
*****
******
*******
********
*********
**********
***********
************
*************
**************
***************
****************
*****************
******************

示例解析

  • 上面的代码中,当我们在函数体内部调用自身函数的时候,如recurrence(x,y),传入的参数x是经过x += 1进行处理的,也就是说参数发生了改变,而y还是原来的值。
  • 递归函数必须要有一个终止递归循环的条件判断,如if x <= y否则程序将一直循环下去,导致程序崩溃。

python的递归函数就暂时介绍到这里,后面要是有遇见了会继续介绍,下一章节我们将介绍一下匿名函数。


全栈后端 / python教程 :


























Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.