查看Linux版本

1[root@web ~]# cat /etc/redhat-release
2CentOS Linux release 7.6.1810 (Core)
3[root@web ~]# uname -a
4Linux web 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
安装pyenv

1[root@web ~]# curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
配置环境变量

1[root@web ~]# cd /root
2[root@web ~]# cp .bash_profile .bash_profile.bak
3[root@web ~]# vim .bash_profile
4#pyenv
5export PATH="~/.pyenv/bin:$PATH"
6eval "$(pyenv init -)"
7eval "$(pyenv virtualenv-init -)"
8[root@web ~]# source .bash_profile
系统自带Python版本为2.7.5

1[root@web ~]# python -V
2Python 2.7.5
安装的pyenv版本为1.2.15

1[root@web ~]# pyenv -v
2pyenv 1.2.15
升级pyenv命令

1[root@web ~]# pyenv update
查看可用的Python版本

1[root@web ~]# pyenv install --list
安装Python3.6.4、2.7.2和3.6.7

1[root@web ~]# pyenv install 3.6.4
2[root@web ~]# pyenv install 2.7.2
3[root@web ~]# pyenv install 3.6.7
查看安装的Python版本有哪些

1[root@web ~]# pyenv versions
2* system (set by /root/.pyenv/version)
3 2.7.2
4 3.6.4
5 3.6.7
6[root@web ~]#
配置root用户的Python版本为3.6.4

1[root@web ~]# cd /root/
2[root@web ~]# pyenv virtualenv 3.6.4 root364
3[root@web ~]# pyenv activate root364
4[root@web ~]# pyenv global 3.6.4
5(root364) [root@web ~]# python -V
6Python 3.6.4
去除当前使用的virtualenv

1(root364) [root@web ~]# pyenv deactivate
2[root@web ~]#
删除某个virtualenv

1[root@web ~]# pyenv virtualenv-delete root364
2pyenv-virtualenv: remove /root/.pyenv/versions/3.6.4/envs/root364? y
3[root@web ~]#
设置/tmp目录的Python环境为python3.6.7

1[root@web ~]# cd /tmp/
2[root@web tmp]# pyenv virtualenv 3.6.7 tmp367
3Looking in links: /tmp/tmpshtqhsk6
4Requirement already satisfied: setuptools in /root/.pyenv/versions/3.6.7/envs/tmp367/lib/python3.6/site-packages (39.0.1)
5Requirement already satisfied: pip in /root/.pyenv/versions/3.6.7/envs/tmp367/lib/python3.6/site-packages (10.0.1)
6[root@web tmp]# pyenv activate tmp367
7[root@web tmp]# pyenv local tmp367
8(tmp367) [root@web tmp]# python -V
9Python 3.6.7
10(tmp367) [root@web tmp]#
在实际的生产环境中,有时候一台机器上面可能需要不同的Python环境,避免每次都要升级或者降级系统自带的Python版本,所以我们使用pyenv来管理不同的Python版本,从而提高效率。
只需要在一台服务上安装好pyenv,再去下载好需要的Python版本和所需要的依赖库,将这个pyenv环境直接打包,批量拷贝到其他服务器,解压即可切换所需要的python版本使用,省去很多琐碎的工作时间。