如何在Python中编写递归函数?

一个递归 函数是它的执行过程中调用自身的函数。这使函数可以重复多次,输出结果和每次迭代的结束。递归与无限有关。 

下面是一个递归函数示例,用于查找整数的阶乘。

数字的阶乘 是从1到该数字的所有整数的乘积。 

例如,阶乘9(表示为9!)为1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 = 362880。

例子1

def factorial(i):
   if i == 1:
      return 1
   else:
      return (i * factorial(i-1))
number = 9
print("The factorial of", number, "is", factorial(number))

输出结果

The factorial of 9 is 362880


在上面的程序factorial()中,它是一个称为递归的函数。每个函数调用将数字乘以1的阶乘,直到数字等于1。

例如,放置两个彼此面对的平行镜。它们之间的任何对象都将递归地反映出来。

例子2

def Function(x):
   if (x < 1):
      return
   else:
      print( x,end = " ")
      Function(x-1)
      print(x,end = " ")
      return
x = 5
Function(x)

输出结果

5 4 3 2 1 1 2 3 4 5