pyenv管理多版本python
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pyenv管理多版本python相关的知识,希望对你有一定的参考价值。
安装不同的python版本并不是一件易事,更何况想在同一主机上来回切换不同版本的python是难上加难!大家都知道多版本会导致互相干扰,但是不是不不能解决呢??
确切回答:不是,因为有一个学习python的好帮手pyenv来管理不同的python版本!
一、首先来安装pyenv:
安装步骤也是很简单,直接在github上下载到本地,然后,分别执行以下命令即可
[[email protected]_ali_sz_120 ~]# git clone https://github.com/yyuu/pyenv.git ~/.pyenv
[[email protected]_ali_sz_120 ~]# echo 'export PYENV_ROOT="$HOME/.pyenv"' >> /etc/profile [[email protected]_ali_sz_120 ~]# echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> /etc/profile [[email protected]_ali_sz_120 ~]# echo 'eval "$(pyenv init -)"' >> /etc/profile
使以上配置生效:
[[email protected]_ali_sz_120 ~]# source /etc/profile
到这里pyenv已经安装完成了,我们可以通过--help来查看pyenv的用法:
[[email protected]_ali_sz_120 ~]# pyenv --help Usage: pyenv <command> [<args>] Some useful pyenv commands are: commands List all available pyenv commands local Set or show the local application-specific Python version global Set or show the global Python version shell Set or show the shell-specific Python version install Install a Python version using python-build uninstall Uninstall a specific Python version rehash Rehash pyenv shims (run this after installing executables) version Show the current Python version and its origin versions List all Python versions available to pyenv which Display the full path to an executable whence List all Python versions that contain the given executable See `pyenv help <command>' for information on a specific command. For full documentation, see: https://github.com/pyenv/pyenv#readme
二、pyenv的使用:
首先可以使用install命令查看支持python的版本
[[email protected]_ali_sz_120 ~]# pyenv install --list Available versions: 2.1.3 2.2.3 2.3.7 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.5 2.5.1 ...
我们这里选择了两个版本来测试在同一主机上安装多个版本的python:
[[email protected]_ali_sz_120 ~]# pyenv install -v 3.6.0 [[email protected]_ali_sz_120 ~]# pyenv versions * system (set by /root/.pyenv/version) 3.6.0 [[email protected]_ali_sz_120 ~]# pyenv install -v 2.7.13 [[email protected]_ali_sz_120 ~]# pyenv versions * system (set by /root/.pyenv/version) 2.7.13 3.6.0
现在我们这个系统中就有三个python的版本了,下面就是如何去切换版本,注意的是'*'表示当前正在使用的版本。可以通过global切换版本:
(这里可能会担心到的切换版本时,版本所对应的依赖会不会一起切换,这个不用害怕相关的依赖也会跟着切换过来,所以完全不用去担心通系统下不同版本的相互影响,下面演示pip的版本也会随着python版本变更而变更)
[[email protected]_ali_sz_120 ~]# pyenv global 3.6.0 [[email protected]_ali_sz_120 ~]# pyenv versions system 2.7.13 * 3.6.0 (set by /root/.pyenv/version) [[email protected]_ali_sz_120 ~]# pip --version pip 9.0.1 from /root/.pyenv/versions/3.6.0/lib/python3.6/site-packages (python 3.6) [[email protected]_ali_sz_120 ~]# pyenv global 2.7.13 [[email protected]_ali_sz_120 ~]# pyenv versions system * 2.7.13 (set by /root/.pyenv/version) 3.6.0 [[email protected]_ali_sz_120 ~]# pip --version pip 9.0.1 from /root/.pyenv/versions/2.7.13/lib/python2.7/site-packages (python 2.7)
最后切回到系统版本:
[[email protected]_ali_sz_120 ~]# pyenv global system
如果想要删除python版本,则可以使用uninstall命令即可:
[[email protected]_ali_sz_120 ~]# pyenv uninstall 2.7.13
以上是关于pyenv管理多版本python的主要内容,如果未能解决你的问题,请参考以下文章