我有几个python项目,他们都有一个conf包:
/some_folder/project_1/
conf/
__init__.py
some_source_file.py
/another_folder/project_2/
conf/
__init__.py
another_source_file.py
对于每个项目,我在site-packages文件夹中创建了一个包含以下内容的.pth文件:
.../site-packages/project_1.pth:
import sys; sys.path.append('/some_folder/project_1/')
.../site-packages/project_2.pth:
import sys; sys.path.append('/another_folder/project_2/')
我可以访问/some_folder/project_1/
中的模块:
import conf.some_source_file
但不是/another_folder/project_2/
中的模块:
import conf.another_source_file
AttributeError: 'module' object has no attribute 'another_source_file'
看起来python只搜索conf
中任何文件夹下的第一个sys.path
路径。有办法解决这个问题吗?
答案 0 :(得分:9)
没有。您需要重命名其中一个或将项目目录转换为包并通过它导入。