Python 从其他目录导入类

Python 从其他目录导入类,python,import,module,hierarchy,Python,Import,Module,Hierarchy,我是python新手,我正在尝试创建我的模块层次结构: projectDir: __init__.py directory1: __init__.py file1.py file2.py directory2: __init__.py file1.py file2.py directory3: __init__.py file1.py file2.py 我希望能够导入directory1 file1.py中的类,例如,当我在dir

我是python新手,我正在尝试创建我的模块层次结构:

projectDir:
  __init__.py

directory1:
   __init__.py
   file1.py
   file2.py

directory2:
   __init__.py
   file1.py
   file2.py

directory3:
   __init__.py
   file1.py
   file2.py
我希望能够导入directory1 file1.py中的类,例如,当我在directory2的file1.py中时。我希望在不修改sys.path或使用imp导入源代码的情况下执行此操作

我在所有目录中创建了
\uuuuu init\uuuuuuu.py
文件,并使用相对导入从directory1导入模块。 但是我需要直接在directory2中运行脚本,它失败的原因如下:


如何使用高效的代码避免此错误?

为什么不使用imp?因为我希望找到更好的解决方案,由于项目代码库很大,模块之间会有很多导入。哦,我明白了,我不知道除此之外还有什么其他方法,
sys.path.append
布局看起来子模块之间不应该有交叉引用。您是否可以设计您的库,以便只将各个部分粘合在某个更高级别的模块中?这将避免交叉导入其中一个目录是配置目录,大多数其他模块将不得不从那里导入。。。