我有一个类似于
的嵌套类/Foo
__init__.py
pitythefoo.py
kungfoo.py
/Bar
__init__.py
spam.py
eggs.py
我的__init__.py
个文件目前有
__all__ = ['pitythefoo', 'kungfoo']
代表/Foo/__init__.py
文件和
__all__ = ['spam', 'eggs']
文件 /Foo/Bar/__init__.py
,
所以我可以使用
访问垃圾邮件和鸡蛋from Foo.Bar import *
spam
eggs
但是,我想使用
访问垃圾邮件和鸡蛋from Foo import Bar
Bar.spam
Bar.eggs
我可以在__init__.py
文件中使用哪些代码进行此类导入吗?
答案 0 :(得分:0)
您可以通过修改Foo/Bar/__init__.py
:
__all__ = ['spam', 'eggs']
from . import *
它有效,但绝对不优雅。
修改强>:
正如上面评论中指出的Andrea Corbellini,您可以避免星号导入:
from . import spam
from . import eggs