我正在更详细地“重新发布”这个问题,因为我觉得它第一次被误解了。我有一个看起来像这样的文件夹结构:
folder w space
├── folder1
│ └── subfolder1
│ └── file_1.py
└── folder2
└── folder w space2
└── file_2.py
└── __init__.py
我需要 file_1.py
从file_2.py
. 请注意file_2.py
,相对于file_1.py
,是向上 3 个目录,然后向下是 3 个目录。理论上,我会这样写相对导入:
from ...folder2 import folder w space2.file2
但是,由于子文件夹中的间距,这是无效的。绝对导入更糟糕,因为基本文件夹也包含空格:
from folder w space.folder2.folder w space2.file2
有了这个,我怎样才能访问file_2.py
没有的内容:
- 重命名文件夹(我不拥有它们,所以即使我想也不能)
- 不使用
sys.path.append()
(在我们的生产环境中效果不佳) - 搬家
file_2.py
(因为组织必须留在原地)
任何帮助将不胜感激!