Python虚拟环境配置及其工作原理
大约 2 分钟
venv in python
工作原理
当Python解释器在虚拟环境中运行时,sys.prefix和sys.exec_prefix指向虚拟环境的目录。sys.base_prefix和 sys.base_exec_prefix指向用于创建环境的基本Python。检查sys.prefix != sys.base_prefix来确定当前解释器是否从虚拟环境中运行。
虚拟环境可以通过其二进制目录(bin on POSIX; Scripts on Windows)中的脚本激活。这会把该目录加到PATH的开头,让python命令调用环境内的解释器,也能直接运行已安装的脚本,不必写出完整路径。激活脚本的调用方式取决于平台和Shell(<venv>必须替换为虚拟环境目录的路径)。
配置方法
在Windows/Linux上,你可以使用Python的内置工具venv来创建指定版本的虚拟环境。以下以Windows环境为例:
确保你已经安装了指定版本的Python解释器。你可以在Python官方网站上下载和安装所需的Python版本
打开命令提示符(CMD)或者PowerShell。
导航到你希望创建虚拟环境的目录。例如,如果你想在
C:\\Projects目录下创建虚拟环境,可以使用以下命令:
cd C:\\Projects- 创建虚拟环境。使用
python命令和-m venv参数,后面跟着虚拟环境的目录名。若当前解释器是Python 3.7,下面的命令就会用该版本创建名为myenv的环境:
python -m venv myenv如果系统上同时安装了多个版本的Python,直接使用目标解释器的完整路径来运行venv。例如,在CMD中:
C:\Python37\python.exe -m venv myenv- 激活虚拟环境。命令提示符(CMD)和PowerShell使用的脚本不同。
在CMD中:
myenv\Scripts\activate.bat在PowerShell中:
.\myenv\Scripts\Activate.ps1激活后,你将看到命令提示符或者PowerShell的提示符前面有(myenv)字样,表示你进入了虚拟环境。
确认创建时使用的解释器版本后,就可以在该环境中安装依赖、运行Python程序。