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

Mixing imports of specific classes of different files in the same statement in 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 文件夹的文件夹),这是使用 [=28 时的默认目录=] 项目 PyCharm,或者当您的项目以可编辑模式安装时 (pip install -e .)。