我有两个模块 misc.py 和 main.py,并且想在 main.py 中定义 misc.py 中存在的所有类。
下面是代码
#misc.py
class dummy:
def __init__(self):
pass
def dummyPrint(self):
print "Welcome to python"
#main.py
import misc
dummyObj = dummy()
dummyObj.dummyPrint()
Run Code Online (Sandbox Code Playgroud)
这是正确的方法吗?我没有看到任何输出,即欢迎使用 python
$python misc_main.py misc.py
Run Code Online (Sandbox Code Playgroud)
编辑:我添加了来自 misc import dummy 的语句,但出现以下错误
$python misc_main.py main.py
Traceback (most recent call last):
File "misc_main.py", line 5, in <module>
dummyObj = dummmy()
NameError: name 'dummmy' is not defined
Run Code Online (Sandbox Code Playgroud)
当您执行以下命令时,您是misc_main.py从解释器中调用的misc.py作为参数。
python misc_main.py misc.py
Run Code Online (Sandbox Code Playgroud)
由于misc_main不读取命令行参数,这相当于
python misc_main.py
Run Code Online (Sandbox Code Playgroud)
我很惊讶在任何一种情况下您都没有收到错误。如果要获得输出,则需要导入实际的类。
from misc import dummy
dummyObj = dummy()
dummyObj.dummyPrint()
Run Code Online (Sandbox Code Playgroud)
请注意,我假设您的主文件实际上已被调用,misc_main.py而不是main.py您在问题中所述。否则,您将不会调用正确的文件。