这里需要特别注意一下, Python是解释类型的语言. 会允许在定义A函数之前没有定义B函数的情况下,函数A调用函数B.
def func1():
print "Hello fun1"
fun2()
def func2():
print "Hello func2"
fun1()
这样做是可以的.但是试想一下, 如果函数2也调用函数1呢?
如下:
def func1():
print "Hello fun1"
fun2()
def func2():
print "Hello func2"
fun1()
fun1()
这就是个嵌套调用.会爆栈的...
因为不是编译性语言,这种问题很难预先用语法分析出来,很可能python为了追求速度,不去分析这种错误.
因此写程序的时候要特别注意, 不要两个或者多个函数之间嵌套调用...
当然,我没有这么干,只是尝试了一下,原来python还真可以嵌套定义函数
时间: 2024-10-13 15:57:09