Ubuntu16.04 安装多个python版本的问题及解决方法

  • Post category:Python

下面是详细讲解“Ubuntu16.04安装多个python版本的问题及解决方法”的完整攻略。

1. 问题描述

在Ubuntu 16.04系统下,可能需要同时安装多个python版本,但是当我们尝试安装新版本时,会发现系统自带的python版本也被升级了,这是因为系统默认将所有的python版本都安装在同一个路径下,并且将/usr/bin/python这个软连接指向了最新安装的版本。

2. 解决方法

为了实现在同一个系统中安装多个python版本,我们需要采用以下方法:

2.1 安装pyenv

pyenv是一款常用的python版本管理工具,可以帮助我们在同一台机器上安装多个python版本,并且方便地切换版本。

Pyenv的安装方法如下:

sudo apt-get update
sudo apt-get install curl
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash

在安装完毕后,需要在.bashrc文件中添加pyenv配置:

export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

然后运行以下命令使配置生效:

source ~/.bashrc

2.2 利用pyenv安装多个python版本

安装完pyenv后,利用pyenv可以方便地安装多个python版本。

例如,安装python 2.7.17版本:

pyenv install 2.7.17

安装完毕后,可以使用以下命令查看已安装的python版本:

pyenv versions

通过以下命令选择某个版本进行使用:

pyenv global 2.7.17

2.3 配置使用第三方库

当我们使用pyenv安装了多个python版本后,每个版本之间使用的第三方库也会不同,为此,我们需要在每个版本内设置自己的第三方库。

例如,使用python2.7.17版本,安装了Django 2.2.6:

pyenv shell 2.7.17
pip install Django==2.2.6

安装后即可在当前版本使用Django 2.2.6。

3. 示例说明

3.1 安装python2.7.17和python3.7.4

首先,按照2.1中的步骤安装pyenv;然后,按照2.2中的步骤分别安装python2.7.17和python3.7.4版本:

pyenv install 2.7.17
pyenv install 3.7.4

安装完毕后,可以使用以下命令查看已安装的python版本:

pyenv versions

结果为:

 * system (set by /home/user/.pyenv/version)
  2.7.17
  3.7.4

其中, * 号表示目前正在使用的版本,当前系统默认使用的版本是system版本。

3.2 在python2.7.17中安装Django 2.2.6

首先,使用以下命令选择python2.7.17版本:

pyenv global 2.7.17

然后,在python2.7.17版本中使用pip安装Django 2.2.6:

pip install Django==2.2.6

安装完毕后,在python2.7.17版本中即可使用Django 2.2.6。

4. 总结

通过以上操作,我们可以在同一台机器上安装多个python版本,并且方便地切换版本。同时,还可以在每个版本内安装不同的第三方库,以满足不同项目的需求。