我输入一组文件的使用创建一个对象了每个文件的进口
from xyz import *
让我们假设我的文件结构如下
xyz
|
|---x.py
|---y.py
|---z.py
X,Y和Z目录都是同一班的孩子。
有没有办法让我所做的导入的所有对象的列表,所以我可以创建x,y和z的对象?
要指定,我想访问目录结构中类的对象。
输出
[X,Y,Z] #classes from the import
我输入一组文件的使用创建一个对象了每个文件的进口
from xyz import *
让我们假设我的文件结构如下
xyz
|
|---x.py
|---y.py
|---z.py
X,Y和Z目录都是同一班的孩子。
有没有办法让我所做的导入的所有对象的列表,所以我可以创建x,y和z的对象?
要指定,我想访问目录结构中类的对象。
输出
[X,Y,Z] #classes from the import
而不是使用from xyz import *
(你不该”无论如何),请使用简单的import xyz
。现在你可以迭代dir(xyz)
:
import xyz
objs = [getattr(xyz, obj)() for obj in dir(xyz)]
在你的某某目录中,添加一个__init__.py
文件包含__all__
变量:
__all__ = ["x", "y", "z"]
我已经有一个'__all__'变量来做*导入。我如何访问独立于目录的'__all__'变量?这会导入所有内容,但不会将这些类放入列表中。 – cjds