我遇到了一个奇怪的问题,我找不到答案。
我想使用可能位于不同模块中的文件,路径名相同(文件夹包含空的 init .py文件):
road1/pato/
road2/pato/modtest.py
其中modtest只包含a = 1 用于测试的简单脚本test.py包含:
import pato.modtest
print(pato.modtest.a)
并正在运行
PYTHONPATH=road2/ python test.py
按预期运行良好。令人困惑的是,
PYTHONPATH=road1/:road2/ python test.py
给出错误
ImportError: No module named 'pato.modtest'
我读过的所有文档都说PYTHONPATH可能包含多个路径,它应该没问题,运行程序只是按顺序查看它们。但是,在这种情况下,在路径前面添加空路径似乎会阻止从后面的路径中读取。如果这是预期的行为,那很好,我很欣赏有关它的优秀文档的链接。
答案 0 :(得分:1)
您有命名空间冲突。