多个模块,一个类的单个实例 - Python

Kel*_*lly 1 python

我有两个模块 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)

mer*_*011 5

当您执行以下命令时,您是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您在问题中所述。否则,您将不会调用正确的文件。