当我正在处理的模块(在我的主目录中)也在系统范围的easy-install.pth文件中定义时,我如何让python脚本导入该模块的开发版本?
$> more /usr/lib/python2.7/site-packages/easy-install.pth
import sys; sys.__plen = len(sys.path)
./foo-1.1.09-py2.7-linux-x86_64.egg
import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:];
p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new)foo模块的设置如下:
foo/
|---- __init__.py
|---- test.py
|---- module1.py
|---- etc.我想从命令行执行脚本,但是当我这样做时
/home/dave/src$> python foo/test.py该脚本导入已经安装在/usr下的版本;如果我的工作目录是/home/dave/src/foo,同样的事情。
当然,我的PYTHONPATH前面有/home/dave/src。
什么是可行的-解决将easy-install.pth预先挂接到PYTHONPATH的方法
发布于 2018-02-21 07:57:07
使用-S选项和完全显式的路径。
例如
$> PYTHONPATH=$HOME/src:/usr/lib/python2.7/site-packages python -S foo/test.py https://stackoverflow.com/questions/48875140
复制相似问题