Ubuntu本身是带有两个python版本的,因此容易出现不少令人头疼的问题。
pip问题例如,使用 pip 进行软件包安装的时候,如果存在缓存,可能导致 pip2 和 pip3 的缓存混用,导致出现无法安装的问题。
此外,如果使用 virtualenv 来建立独立的 Python 环境,对于新手而言也是及其不友好,需要较为长的命令指定一个 Python 版本,非常不便。
软链接修改如果喜欢 python3 ,从而删除 python 这个指向 python2 链接,将其转接到 python3 ,则有可能出现桌面环境依赖的问题。这个问题我认为本身不应该存在,这是 Ubuntu 开发人员图方便,没有使用 #!/usr/bin/env python2 这种写法的后果。
alias处理如果使用 Alias 的 bash 命令,可以保证 python 在用户使用时指向 python3 ,但是对于 pip 的问题并没有解决。因此,我们需要一个更好地解决方案。
更好地解决方案:Pyenv让我们试试使用 Pyenv 来解决这个问题。
源代码: https://github.com/yyuu/pyenv
安装可以直接按照README进行。注意自己使用的SHELL,以及相关的配置。
如此一来,就可以使用pyenv进行python的版本控制了。如果之前安装了 python-pip python3-pip 这两个包,记得在安装 pyenv 提供的 python 之后删除 /usr/local/bin 目录下的 pip 和 pip3 ,这样一来,使用 sudo 命令的 pip ,就是 Ubuntu 系统本身提供的 pip ,为了一些需要系统权限的包提供。