Python的Virtualenv与Venv环境管理器
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.Virtualenv环境管理器
1>.Virtualenv概述
如果你的操作系统使用的是原生python环境,也想要在本系统创建和运行多个Python独立环境(每个python环境都安装不同的包),可以使用py第三方库。
Virtualenv的功能较Conda更加简陋和原始,其与Conda不同之处如下所示:
(1)Virtualenv是一个Python一个包,所以使用Virttualen的前提是你的系统里至少已经有一个Python环境并且安装了Virtualenv包;
(2)创建的子环境,Python解释器(python.exe)是拷贝系统环境的,所以只能创建系统环境已有的Python版本(不能创建操作系统里没有python版本环境);
(3)各个Python环境之间,隔离的知识安装的库(可在新建子环境时选择集成系统python环境库,当然,一般情况下我们不选);
Virtualenv有一个辅助工具,名曰"VirtualenvWrapper",可以简化子环境以下管理操作:
(1)将所有子环境放在一处集中管理;
(2)管理命令加入环境变量不许进入目录就能执行;
(3)安装方法:"pip install VirtualenvWrapper";
(4)使用方式可自行参考帮助信息;
2>.安装Virtualenv
C:Usersyinzhengjie>pip install virtualenv
3>.创建python子环境
D:yinzhengjiepython>virtualenv myVirtualenvTest #创建一个名为"myVirtualenvTest"的子python环境
温馨提示:
如果你在Linux下安装了多个python版本,可以选择你需要创建对应python版本来创建子环境,比如"virtualenv -p /usr/bin/python2.7 venv27"
4>.进入到创建的子环境中
D:yinzhengjiepython>cd myVirtualenvTestScripts D:yinzhengjiepythonmyVirtualenvTestScripts> D:yinzhengjiepythonmyVirtualenvTestScripts>activate (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts> (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>python -V Python 3.8.3 (myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>
5>.退出python子环境
(myVirtualenvTest) D:yinzhengjiepythonmyVirtualenvTestScripts>deactivate #退出子环境
D:yinzhengjiepythonmyVirtualenvTestScripts>
6>.新建子环境继承福环境(比如父环境中已安装的软件包信息)
D:yinzhengjiepython>virtualenv --system-site-packages myVirtualenvTest2 #创建子环境时继承父环境
7>.查看帮助信息
D:yinzhengjiepython>virtualenv -h
二.venv
1>.venv概述
venv是python3.3以上的版本官方自带的一个环境管理工具。 优点: 官方环境自带。。 缺点: python 3.3以前的版本没有此工具,所以使用相比Virtualenv较少。 venv工具根据Virtualenv发展而来,所以功能和操作非常相似。 python 3.4以上创建的子环境开始包含pip。 python 3.7开始,创建的子环境不带独立python解释器,快捷方式直接调用父环境中的Python.exe(如果python升级则所有环境python解释器全部升级,这反而不好!) 另外一个官方他推荐内置环境管理工具pyenv,py3.6起被弃用。 博主推荐阅读: https://www.cnblogs.com/yinzhengjie/p/10624755.html
2>.创建python子环境
D:yinzhengjiepython>python -m venv myVenv #创建一个名为"myVenv"的环境目录
3>.进入python子环境
D:yinzhengjiepythonmyVenvScripts>activate #在子环境目录下的Scripts目录中执行"activate"即可进入该子环境啦~
4>.退出子环境
(myVenv) D:yinzhengjiepythonmyVenvScripts>deactivate #进入到子环境目录中的Scripts目录下,执行"deactivate"命令即可退出当前子环境
5>.查看帮助信息
D:yinzhengjiepython>python -m venv -h
三.博主推荐阅读
Python软件包管理工具pip实战篇: https://www.cnblogs.com/yinzhengjie/p/13696906.html Python软件包及环境管理器conda实战篇: https://www.cnblogs.com/yinzhengjie/p/13659317.html