3

我正在使用一台运行 CentOS 的 linux 机器。我没有完整的 sudo 权限,并且机器上已经安装了多个版本的 python,整个事情有点乱,像 numpy 这样的东西不起作用,我需要安装依赖它的模块。

我想知道是否可以将python(希望是R)安装到我自己的主目录或其他东西中,然后将我需要的模块安装到该目录中并从那里运行我需要的东西?

谢谢

4

5 回答 5

4

尝试使用 virtualenv。当然,这假设您的系统已经安装了 virtualenv。

https://pypi.python.org/pypi/virtualenv

基本用法:

virtualenv venv

这会在您当前的文件夹中创建一个名为“venv”的目录。它放入适当的python二进制pip文件。

进入虚拟环境:

. venv/bin/activate

或等效地:

source venv/bin/activate

这是关键的一步。从那时起,使用安装的任何包pip都将位于我们上面创建的 virtualenv 文件夹的本地。请记住在安装软件包和运行程序之前执行上述步骤。运行python也将使用python来自 virtualenv 的。

您应该会看到如下内容:

(venv)[username@host]$

在你的外壳上。

使用 pip 安装软件包,如下所示:

pip install packagename

这将为我们在第一步中创建的 virtualenv 安装包。

pip使用requirements.txt文件来指定 python 程序所需的包。如果你有一个requirements.txt文件,你可以使用:

pip install -r requirements.txt

安装该文件中指定的软件包。

运行你的 python 程序:

python programName

或使用您需要的相关命令。根据我迄今为止有限的经验,我已经gunicorn为 Web 应用程序运行过。这将使用python我们的 virtualenv 中的和相关的库。

要停用 virtualenv,请使用:

deactivate

希望有帮助!

于 2013-06-20T12:32:02.433 回答
2

创建一个安装您自己的软件的目录:

mkdir -p ~/sw/src
cd ~/sw/src

将 Python 源下载并解压到此目录中。将其配置为安装到~/sw中,然后编译(确保所有必需的标头都可用,如果您想使用 HTTPS 打开 HTTPS url,尤其是那些用于 SSL 的标头urllib2):

./configure --prefix=$HOME/sw
make
make install

最后,将您的设置PATH为包含$HOME/sw/bin.bashrc(或类似的 shell 启动文件)中。现在运行python

R 应该类似地工作。

于 2013-06-20T13:08:24.603 回答
0

只是为了在以前的答案中添加一些额外的信息。

Python 3 有自己的轻量级虚拟环境版本。因此,如果您使用 Python 3(由您的系统提供或自行构建),您可以运行:

python -m venv my_env

my_env这将在目录中创建隔离环境。

跑去python -m venv --help寻求帮助。

于 2013-06-20T13:18:43.200 回答
0

如果您的系统安装了 gcc,您可能会考虑从源代码构建,如此处所述:http: //hg.python.org/cpython/file/2.7/README for Python 2.7 或此处: http ://hg.python.org/用于 Python 3.3 的cpython/file/3.3/README

通过这种方式,您将确保进行干净的安装。即使使用私有安装,使用 virtualenv 仍然是一个好主意。

于 2013-06-20T12:59:45.643 回答
0

我不是专家,但我希望它可以帮助某人。

我已经按照原样执行了这些步骤,并且能够为一个用户安装 python。

http://thelazylog.com/install-python-as-local-user-on-linux/

在此处输入图像描述

于 2020-12-10T13:38:20.060 回答