Python定义依赖于其他未定义的定义?

Rez*_*nor 0 python function definition

我不知道该怎么称呼它,所以如果有人想编辑它:继续.

def Function_A()
 print "We're going to function B!"
 Function_B()

def Function_B()
 print "We made it!'
Run Code Online (Sandbox Code Playgroud)

这是一个初学者的问题,但我没有想到解决方案,因为我被编译语言所破坏.你可以在这里看到,Function_A指向Function_B.在运行时,调用Function_A时不会定义Function_B,因此不会发生.我该如何解决这个问题?

Mah*_*oud 5

在Python中,不需要按使用顺序定义函数.只要它在运行时调用函数之前的某处定义它就应该工作.这是因为在调用Function_A()之前实际上并没有对它进行求值,在这种情况下就是在这个test.py文件的底部,此时已经定义了Function_B().

test.py:

def Function_A():
    print "We're going to function B!"
    Function_B()

def Function_B():
    print "We made it!!"

Function_A()
Run Code Online (Sandbox Code Playgroud)

示例运行:

mahmoud:〜$ python test.py
我们要去B吧!
我们做到了!!