python开发的时候,尤其是多个项目开发的时候,经常会遇到以下两个问题:
为了解决以上问题,需要引入
Python版本管理:在一台机器上实现安装多个版本的python,
Python环境管理:实现对每个项目工程创建虚拟环境实现每个项目不同依赖。
python有众多的版本,不同版本之间支持的特性有差异,而且python2和python3是不向下兼容的,如果做机器学习方面工作又经常会使用anaconda,而anaconda则完全实现了自己的包管理。
为了应对这种局面,python出现了很多管理工具,例如:virtualenv、pipenv、pyenv等
pyenv用于管理python多版本,例如安装多个版本python,如果使用windows系统则需要使用pyenv-win,pyenv可集成virtual-env插件
基本使用
| 命令 | 描述 |
|---|---|
pyenv --version | 查看 pyenv 的版本 |
pyenv versions | 罗列当前已安装的所有 python 环境,如果是当前正在使用的环境,则前面会有个 * |
pyenv help | 查看帮助 |
pyenv init | 如果输入 pyenv 之后使用 tab 不补全,可以使用该命令进行初始即可使用补全命令 |
安装环境
| 命令 | 描述 |
|---|---|
pyenv install -l | 显示可以安装的版本列表 |
pyenv install 版本号 | 安装指定版本的 python |
pyenv rehash | 更新本地数据库,安装指定版本的 python 后使用 |
环境应用
| 命令 | 描述 |
|---|---|
pyenv global 版本号 | 更改本机版本,重启不会造成再次更改 |
pyenv local 版本号 | 会在当前目录创建 .python-version 文件,并记录设置的 python 环境,每次进入该目录会自动设置成该 python 环境 |
pyenv shell 版本号 | 更改当前 shell 下使用的 python 版本,临时生效,优先级高于 global |
virtualenv是python虚拟环境管理工具,可以为每个项目(对应一个目录)创建独立虚拟环境,不同的虚拟环境可以有不同的依赖库
- #创建虚拟环境:
- pyenv virtualenv 3.7.0 test # 使用python 3.7.0 版本创建名字为test的虚拟环境
-
-
- #查看所有虚拟环境
- pyenv virtualenvs
-
-
- #激活虚拟环境
- pyenv activate test
-
-
- #去掉当前环境
- pyenv deactivate
可以看做是virtualenv的升级
本文主要介绍使用pyenv、virtualenv、anaconda搭建python环境,基本可覆盖绝大多数python开发场景。
Python多版本切换工具-Pyenv\virtualenv及Anaconda科学计算环境的配置_rolin-刘瑞的博客-CSDN博客
使用pyenv/virtualenv/anaconda构建python开发环境