我有一个模块,我按照几个来源的建议存储在site-packages目录中。我可以从该目录导入通过pip安装的其他软件包。这是Python 3.6.3的最小测试用例。
MODULE MyStuff:
def Dummy()
return(0)
测试计划:
try:
import MyStuff
except:
print('Import Failed')
print(MyStuff)
print(dir(MyStuff))
result = Dummy()
print(result)
我以管理员身份使用Windows 10命令提示符运行TEST PROGRAM,并显示此结果。(添加空行以提高可读性。)
C:> python K:\ PythonProjects \ TestDummy.py
\的Python \ Python36-32 \ lib中\站点包\ MyStuff.py'>
[' Dummy',' builtins ',' 缓存',&#39 ; doc ',' 文件',' 加载程序',> ' 名称',' 包',' 规范' ]
追踪(最近一次通话): 文件" K:\ PythonProjects \ TestDummy.py",第9行,在模块中
result = Dummy()
NameError:name' Dummy'未定义
答案 0 :(得分:1)
是的,Dummy
未定义。但是,MyStuff.Dummy
是。
这是dir(MyStuff)
告诉您的内容:名称Dummy
在 MyStuff
模块中定义。如果您希望此名称在全局范围内可见,请使用from MyStuff import *
。
答案 1 :(得分:0)
你不应该使用Module.function()?