Python 虚拟环境

什么是 python 的虚拟环境

Python 虚拟环境是 Python 开发中的一种工具,用于创建和管理独立于系统全局 Python 环境的隔离环境。每个虚拟环境都可以拥有自己的 Python 解释器和独立的包集合,这使得在同一台机器上同时进行多个项目开发时能够保持环境的干净和隔离。

为什么需要 python 的虚拟环境

  1. 隔离依赖:每个虚拟环境都有自己的 site-packages 目录,用于存放安装的第三方包,这样可以避免不同项目之间的包冲突。

  2. 版本管理:可以在不同的虚拟环境中使用不同的 Python 版本,或者使用同一 Python 版本的不同补丁版本。

  3. 便于维护:虚拟环境使得项目的依赖和配置可以被单独管理和复制,方便分享和部署到其他环境。

  4. 环境复制:通过共享 requirements.txt 或者 environment.yml 文件,可以快速重建相同的开发环境,确保不同开发者之间开发环境的一致性。

创建&管理 python 虚拟环境的方法和工具

  • Python 内置的 venv 模块
  • 第三方工具 virtualenv

python 虚拟环境的作用范围与生命周期

每个虚拟环境的激活仅限于它所在的命令行窗口或应用程序范围内,不会影响系统的全局设置或其他窗口中的环境, 所以,当关闭激活虚拟环境的命令行窗口或终端后,该虚拟环境就会自动关闭。这是因为虚拟环境的激活状态仅在当前的命令行会话中有效,一旦会话结束(即窗口关闭),虚拟环境的激活状态也随之结束。

关闭窗口后,再次打开新窗口时,默认情况下系统将使用全局 Python 环境,除非你手动再次激活某个虚拟环境。虚拟环境的激活和关闭是轻量级的操作,设计上不会对系统产生持久影响。