微信号:LovePython

介绍:关注Python编程技术和运用

安装的 Python 版本太多互相干扰?以后再也不用担心了。

2018-11-05 10:32 Rocky0429
来自:Python空间(微信号:Devtogether)
专注Python 编程,推送各种 Python 基础/进阶文章,数据分析,爬虫实战,数据结构与算法等

本文字数:2138 字

阅读本文大概需要:6 分钟


写在之前

我们都知道现在的 Python 有 Python2 和 Python3,但是由于各种乱七八糟的原因导致这俩哥们要长期共存,荣辱与共,尴尬的是这哥俩的差异还比较大,在很多时候我们可能要同时用到它们,所以就要在 Python2 和 Python3 之间来回的无缝切换。

安装不同版本的 Python 我已经够累了,还要在不同版本的 Python 之间切换来切换去那不更得累死?而且不同版本之间并存很容易出现某些玄学的问题。当年选 Python 就是看中它的简洁优雅,省心省力,没理由让我在这种版本问题上操心操力,肯定有什么解决办法,果不其然,还真的被我找到了,那就是我今天要给大家介绍的「pyenv」。

「pyenv」 是一个 Python 版本的管理工具,可以进行全局的 Python 版本切换,也可以给单个项目提供对应的 Python 版本。用了 「pyenv」以后,就可以很容易的安装不同的 Python 版本,不同版本之间的切换也变得 so easy。

pyenv 的 安装 & 使用

pyenv 的安装

安装 pyenv,在这里我说一个手动安装的办法,我们可以从 GitHub 直接下载到本地,首先执行下面的命令:

git clone git://github.com/yyuu/pyenv.git ~/.pyenv


~/.pyenv 是你安装 pyenv 的时候想要安装的路径,推荐大家也安装在这个路径下。

安装的过程如下:

Cloning into '/Users/rocky/.pyenv'...
remote: Enumerating objects: 34, done.
remote: Counting objects: 100% (34/34), done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 16518 (delta 12), reused 23 (delta 8), pack-reused 16484
Receiving objects: 100% (16518/16518), 3.22 MiB | 26.00 KiB/s, done.
Resolving deltas: 100% (11199/11199), done.


我们可以看到已经安装成功,接下来我们要添加一下环境变量:

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc


环境变量配置成功,接下来我们要重新载入一下配置文件,你也可以退出以后重新登陆,这样是为了让 ~/.bashrc 中的配置生效。在这里推荐一个做法,可以用 source 命令重新载入配置文件:

source ~/.bashrc


就这样,「pyenv」就安装完成了,我们可以通过命令行来验证一下它是否安装成功:

pyenv --help


上面命令行的意思是获取 prenv 的帮助信息。

pyenv 的使用

我们可以通过 prenv 的 install --list 命令来查看 prenv 当前支持哪些 Python 版本,具体如下所示:

liyans-MacBook-Pro:~ rocky$ pyenv install --list
Available versions:
 2.1.3
 2.2.3
 2.3.7
 2.4
 2.4.1
 ...


因为版本什么的实在太多,这里就不全部列出来了,具体的你可以在自己的电脑上试一下。如果你仔细看就会发现 pyenv 不但可以安装不同版本的 Python,还可以安装不同的 Python 实现,喜欢尝新的同学,可以尝试安装一下最新版本的 Python 使用。

具体的想安装某个版本的 Python,只需要 pyenv install 后面跟上想要安装的版本号即可,比如想安装 3.7.1:

pyenv install -v 3.7.1


如果想查看一下当前你的系统中安装的 Python 版本,可以输入下面的命令:

pyenv versions


显示如下:

* system (set by /Users/rocky/.pyenv/version)
     2.7.1
     3.7.1


由于我安装了 2 个 Python 版本,加上 mac 自身存在的 Python,当前的系统里面存在了 3 个不同的 Python 版本。前面带 「*」表示的是当前正在使用的版本,如果你想切换成别的版本,可以用 prenv global 来选择,具体的操作如下所示:

pyenv global 3.7.1


然后在查看一下当前的 versions,如下所示:

pyenv versions
 system
 2.7.1
* 3.7.1 (set by /Users/rocky/.pyenv/version)


使用 pyenv 以后,可以很快速的切换 Python 版本,与之同时被切换的是与版本相关的依赖,例如你切换成 Python3 版本以后,相应的 pip 也会被切换成 pip3,所以不用担心自己所用的 pip 和当前 Python 版本不匹配。由点及面,所以我们就不用担心不同的版本会在系统中起冲突。

当人能装就能删,如果你想要删除 Python 版本,使用 uninstall 即可,同样是后面跟上版本号,比如删除 2.7.1:

pyenv uninstall 2.7.1


    The end。



●编号541,输入编号直达本文

●输入m获取文章目录

推荐↓↓↓

算法与数据结构

更多推荐25个技术类公众微信

涵盖:程序人生、算法与数据结构、黑客技术与网络安全、大数据技术、前端开发、Java、Python、Web开发、安卓开发、iOS开发、C/C++、.NET、Linux、数据库、运维等。

 
Python编程 更多文章 想转行人工智能?机会来了! 60行Python代码爬取知乎神回复 从初级程序员到编程大牛,只需要每天坚持做这件事情…… Python 实战:用 Scrapyd 打造爬虫控制台 这个Python库要火!可自动生成命令行接口
猜您喜欢 利用d3.js对QQ群资料进行大数据可视化分析 2016年6月14日,今日全球能源资讯 JavaEE好书推荐 | Java编程之路必读系列 《开发者头条》1 月 19 日最受欢迎文章 Top 3 Gen-Z互连(上):Intel缺席的内存中心架构