标签:一个 避免 直接 暂停 打印 内存 现在 col 程序
软件环境:Python 3.7.0b4
由于递归函数调用自己,因此编写这样的函数时很容易出错,进而导致无限循环。例如:
def countdown(i): print(i) countdown(i-1) countdown(5) # 测试数据
当我们编写递归函数时,必须告诉它何时停止递归。所以,每个递归函数都有两部分:
def countdown(i): print(i) # 基线条件 if i <= 0: return # 递归条件 else: countdown(i-1) countdown(5) # 测试数据
计算机在内部使用被称为调用栈的栈。
def greet2(name): print("how are you, ", name, "?") def bye(): print("ok bye!") def greet(name): print("hello, ", name, "!") greet2(name) print("getting ready to say bye...") bye() greet("adit")
3.1:可获得的信息有
def fact(x): if x == 1: return 1 else: return x * fact(x-1)
使用栈的方式表述如下:
3.1:栈将不断地扩大。因为每个程序可使用的调用栈空间有限,程序用完这些空间后,将因栈的溢出而终止。
标签:一个 避免 直接 暂停 打印 内存 现在 col 程序
原文地址:https://www.cnblogs.com/OctoptusLian/p/9028196.html