1、简介
pyenv
https://github.com/yyuu/pyenv
pyenv-virtualenv
https://github.com/yyuu/pyenv-virtualenv
pyenv是一种管理Python版本的工具,它支持在多个Python版本间自由切换,并且还具有virtualenv插件,可以简单快速的建立python的虚拟环境。
virtualenv和pyenv-virtualenv
pyenv-virtualenv 是 pyenv 的一个插件,利用他你可以直接通过 pyenv 直接管理 virtualenv
2、安装pyenv
1、先安装相关依赖库
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
2、下载
下载pyenv 到 ~/.pyenv 目录下
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
3、添加环境变量
sudo vim ~/.bashrc 打开文件,在文件末尾添加:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
4、激活环境
source ~/.bashrc
pyenv
这个时候 pyenv 就已经安装好了
pyenv 的使用
pyenv install --list:查询所有可以安装的版本:
pyenv install --list
Available versions:
2.7
2.7.2
...
3.6.0
3.7-dev
...
安装所需的版本:
pyenv install 3.6.8
卸载特定的Python版本。
pyenv uninstall
显示当前活动的Python版本
pyenv version
3.6.8 (set by /home/yyuu/.pyenv/version)
Python的全局设置,整个系统生效
pyenv global 3.6.8
Python的局部设置,当前目录生效
pyenv local 3.6.8
取消设置
pyenv local --unset
python虚拟环境的对比
- venv 是Python3.3 之后标准库自带的虚拟环境管理工具。但venv是Python3.3才有的,Python2.X不能使用
- virtualenv 同时支持Python2.X和Python3.X
- virtualenv 和venv 所创建的虚拟环境,需要指定使用当前系统下的python解释器
- pyenv 则可以在服务器上 安装 多个不同的Python版本,可以进行全局的Python版本切换,再结合 virtualenv 进行虚拟环境的管理,它也有自己的插件 pyenv-virtualenv,可以来管理虚拟环境
- poetry
poetry 也可以管理 Python 的虚拟环境 和 依赖包,同时可以用于 Python 工程打包和发布,它有更强大的依赖处理功能
参考文档:
poetry 安装与使用教程