我在编写测试解析器时遇到了一些脚本的路径问题。在使用当前工作目录作为搜索路径. 因此,我的内部包路径不起作用。在
这是我的包装布局。在
MyPackage
__init__.py
_test
__init__.py
common.py
parsers
__init__.py
_test
my_test.py
我试图从MyPackage目录中调用脚本。在
命令行语句:
python./parsers/\u test/my_测试.py在
ipy./parsers/_test/my_测试.py在
位于my my_测试.py文件是。在
^{pr2}$在python场景中,我只得到MyPackage/parsers/\u测试目录附加到系统路径因此无法找到MyPackage。在IronPython场景中,MyPackage/parsers/\u test目录和MyPackage/都位于搜索路径. 如果我从_test目录中调用测试,可能会得到同样的错误引用(它不会知道MyPackage)。即使我将测试文件合并到\u test目录中,我仍然会遇到此路径问题。在
我要注意的是,我刚做了测试
import sys
import os
sys.path.append(os.getcwd())
它将正确加载。但我必须对每一个文件都这样做。在
有没有办法解决这种路径问题,而不做下面的事情。在
A.附加一个相对路径系统路径在每个文件里。在
B.附加路径以包含MyPackage(我不希望我的包作为python“全局”系统路径的一部分)
非常感谢你的建议!在
脑海中浮现出两种选择:
使用环境变量PYTHONPATH和include。
把它加到你的系统路径在课程开始时
相关问题 更多 >
编程相关推荐