很多时候我们需要在Linux服务器上跑一些占用内存比较大的程序,在使用Python的时候经常会使用一些开源的package,但是令人头痛的是我们往往并没有服务器上的sudo权限,因此在安装Python的这些开源package的时候会出现各种问题,例如无法安装等等。
小编也被这个问题困扰了一段时间,现在已经成功解决了这个问题,希望能够帮到正在需要解决这个问题的各位朋友!!!
1.当在服务器上无sudo权限的时候,我们就需要使用pip来进行安装Python-package.
pip installl packageName
但是只进行这样的操作,系统会提示你无权限将package安装到服务器上默认的Python-path中:
因此需要将package安装到你的目录下的指定文件夹:
pip install --target=/home/pythonDirect/ packageName
例如:我想安装pandas这个package到我的目录下的pythonPackage这个文件夹中:
pip install --target=/home/ydliu/pythonPackage/ pandas
2.完成第一步时我们仍然无法在Python中import 你想用的package,因为现在并未在环境变量中设置PYTHONPATH,因此在import时并不会去寻找你的安装目录下的package:
import sys
sys.path.append(path to Dir)
这种方法可以将不同的路径(存储package)导入到系统中,以便Python import使用(但只是只限于在当前程序中使用),很显然这只是一个临时的办法。
3.最受用的办法显然是:将包含python-package的路径作为PYTHONPATH加入到环境变量中:
修改配置文件:.bash_profile或者.bashrc(一般是在家目录下的隐藏文件). 将下面这句代码加入到配置文件中。
export PYTHONPATH=$HOME/Directory/:$PYTHONPATH
这样就可以一劳永逸了。