python开发的时候,尤其是多个项目开发的时候,经常会遇到以下两个问题:
- 不同项目使用了不同版本的python
- 不同项目的第三方依赖不一样,例如一个依赖于 xxx-1.0.0,另一个依赖于xxx-1.2.0
为了解决以上问题,需要引入
Python版本管理:在一台机器上实现安装多个版本的python,
Python环境管理:实现对每个项目工程创建虚拟环境实现每个项目不同依赖。
python有众多的版本,不同版本之间支持的特性有差异,而且python2和python3是不向下兼容的,如果做机器学习方面工作又经常会使用anaconda
,而anaconda
则完全实现了自己的包管理。
为了应对这种局面,python出现了很多管理工具,例如:virtualenv、pipenv、pyenv等
pyenv
pyenv用于管理python多版本,例如安装多个版本python,如果使用windows系统则需要使用pyenv-win,pyenv可集成virtual-env插件
Mac上pyenv的安装与使用 - 掘金
基本使用
命令 | 描述 |
| 查看 |
| 罗列当前已安装的所有 |
| 查看帮助 |
| 如果输入 |
安装环境
命令 | 描述 |
| 显示可以安装的版本列表 |
| 安装指定版本的 |
| 更新本地数据库,安装指定版本的 |
环境应用
命令 | 描述 |
| 更改本机版本,重启不会造成再次更改 |
| 会在当前目录创建 |
| 更改当前 |
virtualenv
virtualenv是python虚拟环境管理工具,可以为每个项目(对应一个目录)创建独立虚拟环境,不同的虚拟环境可以有不同的依赖库
#创建虚拟环境:
pyenv virtualenv 3.7.0 test # 使用python 3.7.0 版本创建名字为test的虚拟环境
#查看所有虚拟环境
pyenv virtualenvs
#激活虚拟环境
pyenv activate test
#去掉当前环境
pyenv deactivate
pipenv
可以看做是virtualenv的升级
本文主要介绍使用pyenv、virtualenv、anaconda搭建python环境,基本可覆盖绝大多数python开发场景。