导入文件全部内容的Python语法是什么?

问题描述:

我正在寻找将所有类从一个Python文件导入到另一个?导入文件全部内容的Python语法是什么?

在您希望从中导入的类中,包含一个名为__all__的变量,并填写所需的类/变量的名称。

__all__ = ['Class1', 'Class2', 'variable_i_want'] 

在您希望将它们导入到的类中,可以使用星号来访问所有类。

from foo import * 

如上所述,在执行此操作时要小心名称冲突。

+1

+1提到'__all__'。如果你打算使用'*'import * always *将它与'__all__'结合。否则,你会严重污染命名空间。 –

from module import * 

这样做时一定要小心,因为你可以得到名称冲突。

只需导入文件像任何其他

import mythings 

然后你可以使用

myClass = mythings.MyClass() 
+0

值得一提的是,文件“mythings.py”必须存在于'sys.path'中的某个地方才能使用。 – mgilson

除了其他人说什么,要导入的文件的某处必定存在于sys.path。 (通常你的当前目录在那里,所以同样的目录导入是没有问题的)例如,如果你想从你的父目录导入:

#want to import ../myotherfile.py 
import os 
import sys 
sys.path.append(os.path.abspath(os.pardir)) 
import myotherfile 

print(myotherfile.func())