所以我曾经听说Python将函数作为一流的对象处理,那为什么会失败呢?
def func():
global add
def add():
print('hi')
add()
错误:未定义添加
答案 0 :(得分:5)
可以。
但是您的示例中尚未运行func
,因此尚未创建add
函数。
尝试以下操作;
def func():
global add
def add():
print("hi")
func()
add()
我想不出您为什么会这么做的明智原因-但现在您知道了。
答案 1 :(得分:3)
失败,因为您没有拨打电话
func()
定义
全局添加
如果您调用它,则它定义了“ add”,并且可以正常工作:
def func():
global add
def add():
print('hi')
func()
add()
### result:
hi