我想将所有类从一个Python文件导入另一个?
答案 0 :(得分:5)
在您要导入的类中,包含一个名为__all__
的变量,并用您想要的类/变量的名称填充它。
__all__ = ['Class1', 'Class2', 'variable_i_want']
在您希望将其导入的课程中,您可以使用星号来访问所有课程。
from foo import *
正如所建议的那样,在执行此操作时请注意名称冲突。
答案 1 :(得分:2)
只需像其他任何
一样导入文件import mythings
然后你可以使用
myClass = mythings.MyClass()
答案 2 :(得分:2)
除了其他人所说的内容之外,您导入的文件必须位于sys.path
中的某个位置。 (通常你当前的目录在那里,所以相同的目录导入没有问题)例如,如果你想从你的父目录导入:
#want to import ../myotherfile.py
import os
import sys
sys.path.append(os.path.abspath(os.pardir))
import myotherfile
print(myotherfile.func())
答案 3 :(得分:1)
from module import *
这样做时一定要小心,因为你可能会发生名称冲突。