有没有办法为整个包导入 python 模块?
Is there any way to import python modules for an entire package?
我的包结构如下所示
├── Plugins
│ ├── Eight_Ball.py
│ ├── Ping.py
│ ├── Weather.py
│ ├── __init__.py
包中的每个 .py 文件都需要从项目的其他地方导入一些模块。我宁愿包中的每个文件都不以
开头
from ..Utils.constants import Plugin_Type
from ..Models.Plugin import Plugin
from ..Models.Singleton import Singleton
有没有办法让 Plugins
包中的文件默认导入这些文件?
简而言之,不,没有办法让 Plugins
包中的文件默认导入东西。
虽然通常不鼓励使用 from module import *
,但如果您真的想节省那几行额外的行,您可以创建一个通用导入文件来导入您需要的所有内容,如下所示:
common_imports.py:
from ..Utils.constants import Plugin_Type
from ..Models.Plugin import Plugin
from ..Models.Singleton import Singleton
other_files.py:
from .common_imports import *
同样,不鼓励使用 from module import *
,我建议您只在每个文件的开头包含那几行。
我的包结构如下所示
├── Plugins
│ ├── Eight_Ball.py
│ ├── Ping.py
│ ├── Weather.py
│ ├── __init__.py
包中的每个 .py 文件都需要从项目的其他地方导入一些模块。我宁愿包中的每个文件都不以
开头from ..Utils.constants import Plugin_Type
from ..Models.Plugin import Plugin
from ..Models.Singleton import Singleton
有没有办法让 Plugins
包中的文件默认导入这些文件?
简而言之,不,没有办法让 Plugins
包中的文件默认导入东西。
虽然通常不鼓励使用 from module import *
,但如果您真的想节省那几行额外的行,您可以创建一个通用导入文件来导入您需要的所有内容,如下所示:
common_imports.py:
from ..Utils.constants import Plugin_Type
from ..Models.Plugin import Plugin
from ..Models.Singleton import Singleton
other_files.py:
from .common_imports import *
同样,不鼓励使用 from module import *
,我建议您只在每个文件的开头包含那几行。