有几个帖子围绕这个错误我已经阅读,但我仍然没有得到我做错了什么。“全局名称未定义”错误
我把它放到一个最简单的例子中: 想象一下,我有一个Doc.py和一个包含Tool1.py和Tool2.py的工具包。
Doc.py:
from Tools import *
import sys
def __main__():
TOOL_REPORT("Tool1","Test")
def TOOL_REPORT(tool, path):
if(tool == 'Tool1'):
Tool1.REPORT(path)
elif(tool == 'Tool2'):
Tool2.REPORT(path)
else:
sys.stderr.write("This tool is not yet included in Doc. Please check TOOLS for more information.")
if __name__=="__main__": __main__()
Tool1.py:
def REPORT(path):
print("Tool1 "+path)
Tool2.py:
def REPORT(path):
print("Tool2 "+path)
如果我运行此,我总是这个错误结束:
File "Doc.py", line 15, in TOOL_REPORT
Tool1.REPORT(path)
NameError: global name 'Tool1' is not defined
我会很感激任何错误的提示!
谢谢你,将它们导入到__init__文件中有窍门! – skymningen