一、虚拟环境的作用
如果一个项目要做很多任务就要在环境中安装很多第三方包,但有时候第三方包与包之间会出现版本不兼容,从而导致不可用。同时随着包越来越多,环境也将越难管理。
- 将每个项目限定在特定的虚拟环境中操作,只安装这个项目需要的包,那么会大大减少不兼容问题的发生机率。而且通过虚拟环境隔离不同项目后,便于后期打包成应用程序。
- 直接通过虚拟环境来配置别人项目的运行环境,从而可以运行别人的代码。
二、搭建使用虚拟环境
以VsCode中搭建使用python虚拟环境为例
python3.3 之后venv已经作为标准库嵌入到了python中,而之前的版本需要借助virtualenv这个第三方库来实现。
- vscode打开项目文件,ctrl+~打开powershell,输入命令(python3.3以上):
python -m venv venvone
- 搭建好虚拟环境,项目列表中出现venvone文件夹
- 搜索Windows PowerShell,以管理员身份打开,输入以下命令回复Y:
set-ExecutionPolicy RemoteSigned
- 同意Activate.psl脚本在powershell中运行,运行虚拟环境:
- 将虚拟环境添加到VsCode的配置中,便于之后使用
三、虚拟环境的原理
虚拟环境的本质上是通过调整path环境变量实现的 安装python的时候相当于安装了一个全局的环境:
1.site-packages目录下是python第三方包(也就是pip install 安装的包都在该目录下)
2.标准库就是原生库(os,sys, math 等等)
3.Scripts下是可执行文件(pip install 时就会使用pip.exe这个可执行文件)
4.python.exe就是python解释器
虚拟环境可以看作是原生Python环境的副本,但是标准库都是一样的,所以每次就不复制标准库,而是直接调用原来的标准库就行。同时虚拟环境的解释器也存到了Scripts目录下。
|