pyenv & virtualenv 的安装与使用
使用pyenv管理不同版本的python
安装不同的Python版本并不是一件容易的事情,在不同的Python版本之间来回切换更加困难,而且,多版本并存非常容易互相干扰。因此,我们需要一个名为pyenv的工具。pyenv是一个Python版本管理工具,它能够进行全局的Python版本切换,也可以为单个项目提供对应的Python版本。使用pyenv以后,可以在服务器上安装多个不同的Python版本,也可以安装不同的Python实现。不同Python版本之间的切换也非常简单。
- pyenv:
1、安装:
1 ###创建安装目录 2 ]# mkdir /.pyenv 3 ###下载安装文件 4 ]# git clone https://github.com/yyuu/pyenv.git ~/.pyenv 5 ###配置环境变量 6 ]# echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile 7 ]# echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile 8 ###添加pyenv初始化到shell 9 ]# echo 'eval "$(pyenv init -)"' >> ~/.bash_profile 10 ### 重新启动你的shell使更改生效。 11 ]# exec $SHELL 12 ]# source ~/.bash_profile
2、使用:
1 ]# pyenv 2 pyenv 1.2.8 3 Usage: pyenv <command> [<args>] 4 5 Some useful pyenv commands are: 6 commands 列出所有的可用pyenv命令 7 local 设置或显示本地特定应用程序的Python版本
8 global 设置或显示全局Python版本
9 shell 设置或显示当前shell的Python版本
10 install 使用python-build安装python版本 11 uninstall 卸载指定python版本 12 rehash 更新数据库,在安装 Python 或者其他带有可执行文件的模块之后,需要对数据库进行更新
13 version 列出目前本机上当前使用的python版本 14 versions 列出目前本机上已经安装有哪些版本的python 15 which 显示完整的安装路径 16 whence 按指定的版本来显示所有的python 17 18 See `pyenv help <command>' for information on a specific command. 19 For full documentation, see: https://github.com/pyenv/pyenv#readme
- virtualenv
利用virtualenv 创建虚拟python环境
1 ]# git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv 2 ]# echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile 3 ]# source ~/.bash_profile
1 ]# pyenv versions 2 system 3 * 3.6.4 (set by /root/.pyenv/version) 4 5 ###创建虚拟环境 6 ]# pyenv virtualenv 3.6.4 fist_pro 7 Requirement already satisfied: setuptools in /root/.pyenv/versions/3.6.4/envs/fist_pro/lib/python3.6/site-packages 8 Requirement already satisfied: pip in /root/.pyenv/versions/3.6.4/envs/fist_pro/lib/python3.6/site-packages 9 ]# pyenv virtualenv 3.6.4 second_pro 10 Requirement already satisfied: setuptools in /root/.pyenv/versions/3.6.4/envs/second_pro/lib/python3.6/site-packages 11 Requirement already satisfied: pip in /root/.pyenv/versions/3.6.4/envs/second_pro/lib/python3.6/site-packages 12 13 ###查看创建的虚拟环境 14 ]# pyenv virtualenvs 15 3.6.4/envs/fist_pro (created from /root/.pyenv/versions/3.6.4) 16 3.6.4/envs/second_pro (created from /root/.pyenv/versions/3.6.4) 17 fist_pro (created from /root/.pyenv/versions/3.6.4) 18 second_pro (created from /root/.pyenv/versions/3.6.4) 19 20 ###激活创建的虚拟环境 21 ]# pyenv activate fist_pro 22 pyenv-virtualenv: prompt changing will be removed from future release. configure `export PYENV_VIRTUALENV_DISABLE_PROMPT=1' to simulate the behavior. 23 (fist_pro) ]# 24 25 ###退出虚拟环境 26 (fist_pro) ]# pyenv deactivate 27 ]# 28 29 ###删除创建的虚拟环境 30 [root@boco nginxft]# pyenv virtualenv-delete fist_pro 31 pyenv-virtualenv: remove /root/.pyenv/versions/3.6.4/envs/fist_pro? y 32 33 [root@boco nginxft]# pyenv virtualenvs 34 3.6.4/envs/second_pro (created from /root/.pyenv/versions/3.6.4) 35 second_pro (created from /root/.pyenv/versions/3.6.4)