在PYTHONPATH中添加的路径更改了sys.path entires
我安装了许多版本的软件包。我的基础系统python是在PYTHONPATH中添加的路径更改了sys.path entires,python,module,python-import,enthought,Python,Module,Python Import,Enthought,我安装了许多版本的软件包。我的基础系统python是~/Library/enthught/Canopy\u 64bit/User/lib/python2.7/ 但我还有一个应用程序('yt'),它将自己的python安装到 ~/Applications/yt/yt-x86\u 64/lib/python2.7/ 我添加了yt路径,以便在运行系统python时可以导入其中包含的模块。问题是,当我将yt路径添加到PYTHONPATH时,它会将大量其他目录添加到我的sys.path中较高的条目中,因此
~/Library/enthught/Canopy\u 64bit/User/lib/python2.7/
但我还有一个应用程序('yt'),它将自己的python安装到
~/Applications/yt/yt-x86\u 64/lib/python2.7/
我添加了yt路径,以便在运行系统python时可以导入其中包含的模块。问题是,当我将yt路径添加到PYTHONPATH
时,它会将大量其他目录添加到我的sys.path
中较高的条目中,因此当我尝试导入numpy
时(例如),我最终得到的是yt版本,而不是我的系统版本
有没有办法防止我的
sys.path
被修改?PYTHONPATH
值总是插入到sys.path
中标准python库路径的前面
解决此问题的一种可能方法是将yt
路径添加到sys.path
中
所以试试看
# append to the *end* of the system path.
sys.path.append('~/Applications/yt/yt-x86_64/lib/python2.7/path/to/libs')
这将把
yt
特定模块放在列表的末尾,系统的numpy
将首先被找到/导入。我添加到PYTHONPATH的其他内容似乎被附加到sys.path的末尾---似乎正是这个yt
内容改变了周围的顺序。。。我不确定。无论如何,您将路径专门添加到LIB的想法非常好,而且似乎很有效!谢谢@ZeMES-我不是Python PATH的专家,但它似乎在SysPoT的中间,在鸡蛋之后,但在标准模块之前。