定义:
在函数内,可以调用其他函数,如果一个函数在内部调用自己,返回值中包含函数名,这个函数就是递归函数。
特性:
1、必须要有明确的结束条件;
2、每进入更深一层递归时,问题规模相对上次递归都应该有所减少;
3、递归效率不高(递归层次过多会导致栈溢出);
实例1:
# n每次除以2 不断减小,直到n小与1则退出 def js_num(n): print(n) if n >= 1: return js_num(n/2) else: print('退出',n) js_num(10)
实例2:
# 2的n-1次方 def js_num2(n): if n==1: return 1 else: return 2**js_num2(n-1) print(js_num2(4))