摘要
本文内容转自网络,个人学习记录使用,请勿传播
- Python解释器版本混乱, 2和3差别巨大, 而且细分版本也不尽相同, 难以选择和管理.
- 不同Linux发行版自带Python不同, 如ubuntu16自带2.7和3.5版本, 其中系统许多组件依赖于自带解释器, 一旦删除或者更改都可能会造成系统出问题.
- 不同的Python解释器软件包管理也是问题, 如pip和ipython等必备包组件, 而且在项目开发中如何保证不同的包环境互不干扰也是一个问题.
那么有没有一个终极的解决办法能在管理不同解释器版本的同时控制不同的包环境呢? 有的, 就是pyenv.
pyenv是什么? 能干什么?
pyenv是一个forked自ruby社区的简单、低调、遵循UNIX哲学的Python环境管理工具, 它可以轻松切换全局解释器版本, 同时结合vitualenv插件可以方便的管理对应的包源.
安装pyenv
1 | git clone https://github.com/pyenv/pyenv.git ~/.pyenv |
简单使用
1 | # 查看当前版本 |
包管理插件pyenv-virtualenv
1 | $ git clone https://github.com/pyenv/pyenv-virtualenv.git $.pyenv/plugins/pyenv-virtualenv |
使用
1 | # 创建虚拟环境 |
pipenv
pipenv通过一个pipfile.lock进行管理版本的升级和更新。使用pipenv就和pip的命令是一样的,不同的是它多了环境的版本管理,如果你接触过java的maven之后,就会发现它们很类似。
安装
1 | pip install pipenv |
使用
1 | # 基于python版本创建虚拟环境 |