【问题标题】:Install different versions of python 2安装不同版本的python 2
【发布时间】:2020-08-12 13:39:36
【问题描述】:

我的系统是 ubuntu 18.04。 我预装了 python 3 和 2 版本。

which python3
/usr/bin/python3
python3 -V
Python 3.6.9

which python
/usr/bin/python
python -V
Python 2.7.17

我需要创建几个虚拟环境,一个用于 python 2.7.15,另一个用于 2.6。我该怎么做?

【问题讨论】:

  • 这能回答你的问题吗? Use different Python version with virtualenv
  • 您需要先安装您要使用的python版本,然后根据该版本设置一个virtualenv
  • @Marco 这就是问题所在,我该怎么做?
  • python.org/downloads 你可以找到所有 python 版本;你必须下载你想要的然后解压/解压缩它并打开自述文件来查看如何安装。安装后,您按照答案 2
  • 如何安装python我知道,例如2.7和2.6我不明白如何一起安装

标签: python virtualenv


【解决方案1】:

创建虚拟 Python 环境有多种方法。三个流行的是

  • 虚拟环境
  • pipenv
  • 康达

我个人非常喜欢 conda。

虚拟环境

假设您已安装 pip,您将获得 virtualenv

pip install virtualenv

安装后,您可以更改为您选择的目录并创建这样的虚拟环境

virtualenv myenvironmentname 

如果您想在虚拟环境中使用不同的 python 版本,可以使用 --python 标志指定。

virtualenv --python=/usr/bin/python2.6 myenvironmentname

但是,请注意,这需要您预先安装您指定的 python 版本,virtualenv 不会为您处理这个问题(请查看Use different Python version with virtualenv 了解更多详细信息)。所以你需要本地安装你想要的版本。

然后你可以激活环境

myenvironmentname/bin/activate

继续使用pip安装包等。看看

pip freeze --help

了解如何使您的环境可重用。

pipenv

pipenv 结合了 pip 和 virtualenv。

您可以使用安装它

pip install --user pipenv

Pipenv 根据项目处理依赖关系

cd myprojectfolder
pipenv install

这将创建一个Pipfile,它将跟踪依赖项和一个virtualenv(有关更多详细信息,请参阅https://docs.python-guide.org/dev/virtualenvs/)。

要使用特定版本创建环境,您可以这样做

pipenv install --python '/usr/bin/python2.6'

pipenv install --python 2.6

Cmp. Set python version when creating virtualenv using pipenv。如果您还安装了pyenv,第二个表单将提示pipenv 尝试安装不存在的版本,afaik。

康达

Anaconda Python 是一个 Python 发行版(专注于数据科学),带有自己的包和名为 conda 的虚拟环境管理器。 Anaconda Python 在 Ubuntu 18.04 LTS 的官方包仓库中不可用,但需要通过其他方式安装(官方文档可以在这里找到:https://docs.anaconda.com/anaconda/install/linux/)。

要使用 conda 创建环境,请执行以下操作

conda create --name myenvironmentname python=2.7.15 

virtualenv 相比,默认情况下环境不是在当前工作目录中创建,而是安装到您的 conda 目录中的envs 目录中。 conda 也会注意安装正确的 python 版本,至少只要它是默认通道的一部分(见下文)。

然后您可以使用

激活所述环境
conda activate myenvironmentname

正如我在上面所写的,您指定的 python 版本需要可从配置的 conda 通道中获得。但是,python2.6 已从默认频道中删除。要解决此问题,您可以将免费频道添加回您的默认列表(有关详细信息,请参阅https://docs.conda.io/projects/conda/en/latest/user-guide/configuration/free-channel.html):

conda config --set restore_free_channel true

之后就可以了

conda create --name myotherenvironmentname python=2.6

并根据需要在环境之间切换

conda activate myotherenvironmentname

【讨论】:

    【解决方案2】:

    对于python3 python -m venv <your_virtual_enviroment_path>对于python2 virtualenv <your_virutal_enviroment_path>

    激活source <your_virtual_environment_path>/bin/activate。并停用deactivate。最后检查一下激活了什么echo $VIRTUAL_ENV

    我强烈建议为每个项目使用一个虚拟环境。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-14
    • 2022-07-01
    • 2014-09-05
    • 1970-01-01
    • 2016-07-05
    • 2020-07-16
    • 2012-01-17
    • 1970-01-01
    相关资源
    最近更新 更多