在Python的同一语句中混合导入不同文件的特定类



我的脚本中有这样的语句:

from com.example.project.fileA import ClassA
from com.example.project.fileB import ClassB
from com.example.project.fileC import ClassC

但是,在每个导入语句中重复父路径(com.example.project)有点乏味。

有办法使这更容易吗?我已经试过这样做了:

from com.example.project import fileA.ClassA, fileB.ClassB, fileC.classC 

将导入放到project模块的__init__.py文件中。例如,考虑以下文件夹结构:

com/
example/
project/
__init__.py
fileA.py
fileB.py
fileC.py
my_code/
my_script.py

您在com/example/project/__init__.py中写入以下内容:

from com.example.project.fileA import ClassA
from com.example.project.fileB import ClassB
from com.example.project.fileC import ClassC

那么从my_script.py,你可以写:

from com.example.project import ClassA, ClassB, ClassC 

这当然假设你当前的工作目录是项目根文件夹(即包含commy_code文件夹的文件夹),这是PyCharm中使用结构合理的项目时的默认设置,或者当你的项目已安装在可编辑模式(pip install -e .)时。

最新更新