python - 在安装了 5 个不同 python 的 ubuntu 上正确使用 virtualenv

标签 python ubuntu virtualenv

我正在设置一个 ubuntu 15.10 虚拟机(win7 virtualbox 主机),并希望使用 python 进行一些使用 python 的机器学习实验(我需要 numpy、scipy、sklearn、matplotlib、xgboost)。

根据我过去的经验,依赖关系可能很棘手,而且这些库并不总是立即安装,我想使用 virtualenv。

Virtualenv 安装文档建议使用 pip 来安装软件包,好的,但是现在当我列出我的盒子上可用的 python 版本时,我发现其中 5 个(如果你想知道,这来自一个普通版本) 15.10安装...):

hippo@u64-ml:~$ sudo find / -type f -executable -iname 'python*' -exec file -i '{}' \; | awk -F: '/x-executable; charset=binary/ {print $1}' 
/usr/bin/python3.4
/usr/bin/python3.4m
/usr/bin/python2.7
/usr/bin/python3.5m
/usr/bin/python3.5

所以现在我不确定:

1/如何确保我创建的 virtualenvs 适用于给定的 python 版本?

2/我如何安装 python3.5 的软件包?如果我使用 pip3,我不知道它将把二进制文件放在哪里以及 python 将如何找到它们(是否适用于 python3.4、3.4m、3.5、3.5m?)。

编辑以下答案的结果:

hippo@u64-ml:~$ virtualenv -p python3.5 hippo3.5
Running virtualenv with interpreter /usr/bin/python3.5
Using base prefix '/usr'
New python executable in hippo3.5/bin/python3.5
Also creating executable in hippo3.5/bin/python
Installing setuptools, pip...done.   ## installs the right pip
hippo@u64-ml:~$ which pip            
hippo@u64-ml:~$ source hippo3.5/bin/activate   ## now when i activate the env, all works perfect!!
(hippo3.5)hippo@u64-ml:~$ which pip
/home/hippo/hippo3.5/bin/pip
(hippo3.5)hippo@u64-ml:~$ which python
/home/hippo/hippo3.5/bin/python

最佳答案

假设您安装了 virtualenv (sudo apt-get install python-virtualenv),您将使用它来创建一个包含您选择的 Python 二进制文件的 env。 pip 安装在新的 virtualenv 中,因此您可以激活该 env 并使用它来安装软件包。

virtualenv -p python3.5 env
source env/bin/activate
pip install flask

关于python - 在安装了 5 个不同 python 的 ubuntu 上正确使用 virtualenv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36190222/

相关文章:

pip - 我应该使用 pip 或 pip3 在虚拟环境中安装 python3 软件包吗?

django - Matplotlib 安装问题。 Pip Centos - 安装后为 Freetype "Missing"

python - paramiko sftp.get

java - 将 Python 转换为 Java 以在 Android/iOS 上运行

ruby-on-rails - 如何在已经安装了 XAMPP 的 Ubuntu 12.10 中安装完整的 Ruby on Rails 环境?

ubuntu - 在 docker 容器内创建网络命名空间时出错。错误 : mount --make-shared/run/netns failed: Permission denied

python - Bokeh 图时间序列

python - 测试 python 函数的非确定性行为

C# 和 Ubuntu - 如何获取主屏幕的大小?

python - 如何为Python虚拟环境配置Ansible?