Ubuntu无法识别.local python路径

问题描述:

Iam在没有root权限的服务器上工作,重启后似乎我的路径变量被销毁。由于Iam不允许使用virtualenv,我使用pip安装 - 用户包来安装python软件包。Ubuntu无法识别.local python路径

由于重启,我只能使用过时的库在/usr/lib/python2.7/dist-packages,但不/.local/lib/python2.7/site-packages

我也不能在终端的.local路径中使用scrapy或spyder等软件包。我已经设置了export PYTHONPATH = $ PYTHONPATH:/ .local/lib/python2.7/site-packages,但没有任何更改。

.local如果我在python中运行print(sys.path),路径也不会显示。

我必须改变其他路径吗?

操作系统是Ubuntu 14.04。

预先感谢您。

+0

我有同样的问题。但对我而言,IPython仍然会得到正确的'sys.path'并导入安装在'.local/lib/python2.7/site-packages'中的模块。这个问题提到[这里](https://*.com/questions/23209192/ipython-sys-path-different-from-python-sys-path)但它仍然不能解释为什么突然python决定使用错误的网站包... – PlasmaBinturong

请尝试以下方法:

whereis python 

的Python总是使用它找到的第一个包。在系统之后,PYTHONPATH被附加到sys.path。所以它通常会首先找到系统。但是,“官方”每用户软件包目录似乎在此之前。因此,建立您的个人站点包目录:

mkdir -p $HOME/.local/lib64/python2.7/site-packages 
mkdir $HOME/bin 

(您可能需要更改“lib64下”到“LIB32”或只是“LIB”)

该目录将存放在系统中的一个在我的系统上。但是你应该通过打印sys.path来验证它。

然后安装你的软件包到那里。但是,最新的pip版本中的--user选项应该已经放在那里。

作为列表度假村,您可以操纵sys.path。您可以在系统站点包之前将您的目录插入到sys.path中。

您可以通过其他选项在$ HOME/bin目录中安装脚本。

安装这样的:

pip install --user --install-option="--install-scripts=$HOME/bin" 
+0

感谢您的快速响应。这显示了Python路径,但.local路径不在那里。我想知道,如何将pip用户路径添加到python路径(我已经尝试修改$ PYTHONPATH) – Norovis