Python的pyenv-win工具[包]安装与使用
在日常运维中, 经常遇到这样的情况: 需要在系统中安装多个Python版本,即需要实现Python的多版本环境共存, 现在介绍如何应对:
其实,Windows中,若使用Python可执行安装程序(后缀为exe 如python-3.8.0-amd64.exe),不需要借助其它工具,就可以安装使用多个版本的Python。
具体点说来,使用Python可执行安装程序,你可以安装多个不同版本的Python(相同版本的Python只能安装一个,第二次安装相同版本的Python时,会让你选择修改,修复或者卸载),安装目录不完全相同即可,使用可执行安装程序安装的多个不同版本的Python启动项出现在开始菜单中且相邻。这也是个不错的多版本共存方案。第三方模块(库、包)安装、卸载与查看可参见 https://blog.csdn.net/cnds123/article/details/104393385
pyenv-win 是python版本管理工具[包],最早用于unix系统中后移植到Windows系统中,在此介绍的是window版本,pyenv-win官网:https://github.com/pyenv-win/pyenv-win
【注意,pyenv-win不能管理用可执行安装程序安装的python。】
pyenv-win安装与使用
建议新手先通读完全文有个概观后,再据此实验,效果更好。
首先检查你的机器下是否安装了pyenv
打开cmd命令,输入pyenv,出现版本号即代表安装成功。若未安装往下看。
安装pyenv-win
安装环境变量时,设置对应的bin路径
☆ 默认就安装在当前路径的.pyenv下,然后还需要设置环境变量
pip install pyenv-win --target %USERPROFILE%/.pyenv
提示 可以将%USERPROFILE%/换成要存放pyenv的路径。
【什么是 pip ?pip 是 Python 中的标准库管理器。它允许你安装和管理不属于 Python标准库 的其它软件包。该工具提供了对Python 包的查找、下载、安装、卸载的功能。pip 官网:https://pypi.org/project/pip/,高版本python集成了pip。】
如:
pip install pyenv-win --target d:/pyenv/.pyenv
添加环境变量
把PYENV添加到系统环境变量。
建立环境变量名:PYENV
变量值:D:\pyenv\.pyenv\pyenv-win
注意,应使用你的实际情况,我存放pyenv的路径是D:\pyenv\.pyenv,故设置为 D:\pyenv\.pyenv\pyenv-win
把下面的两个路径,添加到Path变量里面即可。可以添加到用系统环境变量的Path或用户环境变量的Path,多数人通常习惯是设置系统环境变量,这里建议设置用户环境变量的Path。
%PYENV%\bin
%PYENV%\shims
具体操作:右击“此电脑”单击弹出的快捷菜单的“属性”命令,然后操作参见下面图示:
设置好后,测试pyenv是否安装并配置成功
打开cmd命令,输入pyenv,出现版本号即代表安装成功
【顺便提示:如果设置无误,仍报错“'pyenv' 不是内部或外部命令,也不是可运行的程序 或批处理文件。‘
处理:设置用户环境变量。
原因:已用可执行安装程序安装过python设置了用户环境变量,而你设置的是系统环境变量。
环境变量设置后要重新打开CMD(否则不生效的),再输入pyenv验证。】
pyenv成功安装并配置后,就可以利用pyenv下载安装不同版本python
☆ 列出pyenv可以管理、安装的python版本
pyenv install --list
或
pyenv install -l
☆ 安装指定python版本
由于默认的pyenv使用的下载镜像(mirror)下载时很容易超时导致下载失败或下载很慢,这里我们更换一个更快的下载镜像如淘宝镜像,修改pyenv-win\libexec\libs目录下(特别提示,对早期pyenv-win是在pyenv-win\libexec目录下)的pyenv-install.vbs文件中mirror=" https://www.python.org/ftp/python"引号内的改为https://npm.taobao.org/mirrors/python/ ,参见下图:
现在可以使用下面命令安装python3.7.4
pyenv install 3.7.4
参见下图:
可以安装多个python,如再安装一个版本python3.8.1,使用下面命令即可
pyenv install 3.8.1
方才安装python的位置在pyenv 安装目录的versions文件夹中,参见下图:
☆ 设置特定python版本全局使用
pyenv global 3.7.4
☆查看当前全局python版本
pyenv global
☆ 重新处理(rehash)一下
pyenv rehash
☆ 查看已经安装好的python版本
pyenv versions
其中,* 表示系统当前的全局版本
输入python,启用的就是它,参见下图:
☆卸载python:
pyenv uninstall <version> #卸载版本号为<version>的Python
如卸载python3.7.4
pyenv uninstall 3.7.4
pyenv安装的python有IDEL吗?如何使用
有的
在相对路径versions\X.Y.Z\Lib\idlelib,其中X.Y.Z是对应着python版本号
找到idle.bat文件双击就可打开
小结
常用的pyenv指令
pyenv versions:列出当前系统中所有安装的python。
pyenv version:显示出当前使用的python。
pyenv global <python_version>:设置使用哪一个python。
pyenv install <python_version>:安装特定版本的python。
pyenv uninstall <python_version>:移除特定版本的python。
pyenv install -l:查看可安装的python。