Python 虚拟环境
在这一章中,您将了解Python中虚拟环境是什么,以及如何创建和使用虚拟环境来构建Python应用程序。
当您在计算机上安装Python软件时,它可以在文件系统的任何地方使用。这是一个系统范围的安装。
在开发Python应用程序时,可能需要使用pip工具安装一个或多个库(例如, pip3 install somelib )。此外,一个应用程序(例如App1)可能需要特定版本的库,比如 somelib 1.0 。同时,另一个Python应用程序(例如App2)可能需要同一个库的更新版本,例如 somelib 2.0 。因此,通过安装新版本,App1的功能可能会受到影响,因为两个不同版本的库之间会发生冲突。
可以通过在同一台机器上提供两个独立的Python环境来避免这种冲突。这些称为虚拟环境。虚拟环境是一个分离的目录结构,包含隔离的安装,其中有着Python解释器、标准库和其他模块的本地副本。
下图显示了使用虚拟环境的目的和优势。使用全局的Python安装,创建了多个虚拟环境,每个环境都有不同版本的同一个库,以避免冲突。
这个功能由标准Python发行版中的 venv 模块支持。使用以下命令创建一个新的虚拟环境。
在这里, myvenv 是要创建一个新的Python虚拟环境的文件夹,显示以下目录结构:
将激活和停用虚拟环境以及本地Python解释器的工具放在脚本文件夹中。
要启用这个新的虚拟环境,请在Scripts文件夹中执行 activate.bat
注意括号中的虚拟环境的名称。Scripts文件夹包含Python解释器的本地副本。您可以在此虚拟环境中启动一个Python会话。
要确认此Python会话是否在虚拟环境中,请检查 sys.path 。
这个虚拟环境的scripts文件夹也包含pip工具。如果您从PyPI安装一个包,那个包将只在当前虚拟环境中生效。要禁用此环境,请运行 deactivate.bat 。