Python,我可以在没有Imported类的情况下导入*

时间:2015-09-25 17:07:13

标签: python python-2.7 import

让我假装我有一个名为file1.py的文件:

from app1 import ClassX

class Class1:
    pass

class Class2:
    pass

如果在另一个名为file2.py的文件中我要导入Class1Class2而没有明确导入此类我通常需要使用

from file1 import *

我的问题是,当我这样做时,我也导入了ClassX,但我不想导入ClassX,我也不想显式导入Class1和Class2。 / p>

有一些方法可以只导入我在File1中开发的类吗?

1 个答案:

答案 0 :(得分:2)

对Jonathon Reinhart对这个问题的评论提出更好的观点:

# app2.py
from app1 import ClassX

__all__ = ['Class1', 'Class2']

class Class1:
    pass

class Class2:
    pass

# test.py
from app2 import *

c = Class1()
d = Class2()
try:
    e = ClassX()
except NameError:
    print "Working as intended!"