Python的虚拟环境(venv)介绍

平时随便写点python脚本,其实没有必要使用虚拟环境。一般都是在创建flask或者django这些比较复杂的项目时,才需要单独建一个虚拟环境,保持项目的执行环境干净,不被引入无用的一些三方库或者某些不好用的版本库。

通俗的来讲,这个虚拟环境可以理解为一个“容器”,在这个容器中,我们可以安装我们需要的依赖包,而且各个容器之间互相隔离,互不影响。

可以用来创建虚拟环境的工具其实有挺多的,比如Conda、venv、pipenv等,这里要介绍的是venv,因为在python3.3之后的版本,已经自带了venv。其实各个工具基本功能都挺全面的,可以选择一种自己喜欢的熟悉一下,不用太纠结到底用哪一个。

venv的使用

用venv创建一个虚拟环境非常简单,直接一个命令就可以:

python -m venv 英文格式的虚拟环境目录名称

新建的虚拟环境

被创建出来的文件夹内就会自带一个Scripts文件夹,里面是一些用于操作这个虚拟环境的脚本:

Scripts里的文件

直接运行activate开头的文件就可以打开虚拟环境,但是activate和activate.bat可以直接执行,另一个Activate.ps1是PowerShell脚本,默认是不能直接执行的,一般也不会去使用这个PowerShell开启虚拟环境。

进入虚拟环境后,想退出虚拟环境,可以执行deactivate.bat。

在虚拟环境开启状态下安装、配置的的库或者变量,都只对当前虚拟环境生效,不会影响到外部全局环境。

比如我在虚拟环境安装一个requests:

安装requests

外部环境是无法使用这个虚拟环境内的requests的。

如果你在本地有多个python版本,且要指定虚拟环境使用的python版本,可以在新建虚拟环境时用目标版本的python.exe进行执行,用python3.7执行新建命令,虚拟环境就会使用python3.7作为执行版本。

当然有些工具也支持在新建的时候通过参数指定python版本,不过venv不支持参数指定。

声明:本站部分文章内容及图片转载于互联 、内容不代表本站观点,如有内容涉及侵权,请您立即联系本站处理,非常感谢!

(0)
上一篇 2022年5月13日
下一篇 2022年5月13日

相关推荐