gpt4 book ai didi

python - 全局名称未定义,我该如何导入?

转载 作者:行者123 更新时间:2023-11-30 23:06:25 24 4
gpt4 key购买 nike

我在我的代码中遇到了这个错误全局名称**未定义,下面是一个最小的示例,

测试1.py

 def f():
print 'inside f()'
g()
return

测试2.py

 def g():
print 'inside g()'

from test1 import f
f()

当我在终端中运行python test2.py时,出现错误NameError:全局名称'g'未定义,我应该如何导入 test1 以避免此错误?

最佳答案

如果您不想将对 f() 的调用分离到不同的文件,那么您可以执行以下操作:

测试1.py

from test2 import g

def f():
print 'inside f()'
g()
return

测试2.py

def g():
print 'inside g()'

if __name__ == '__main__':
from test1 import f
f()

这样,test2 中对 f() 的调用只有在执行脚本时才会运行:

$ python test2.py
inside f()
inside g()

关于python - 全局名称未定义,我该如何导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32674944/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com