下面是详细讲解“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版本,并且方便地切换版本。同时,还可以在每个版本内安装不同的第三方库,以满足不同项目的需求。