python虚拟环境使用

文章目录

一、问题导入

参考文档:https://docs.python.org/zh-cn/3/library/venv.html

|---------------------------------------------------------------|
| 在安装playwright和pyppetee模块时,出现pyee版本不匹配问题,如果要同时使用两者,最好使用虚拟环境隔离。 |

解决办法如下:

shell 复制代码
# 创建并激活虚拟环境
python -m venv playwright_env
source playwright_env/bin/activate  # Linux/macOS
playwright_env\Scripts\activate     # Windows

# 安装 playwright(依赖会自动匹配)
pip install playwright

二、虚拟环境

2.1 工作原理

虚拟环境主要基于路径隔离和环境变量配置。在创建虚拟环境时,会生成独立的目录结构;激活脚本会修改PATH,将虚拟环境的binScripts目录置于最前。

python解释器启动时会通过sys.prefix(虚拟环境目录)和sys.base_prefix区分环境(全局python)。

路径隔离 bin目录存放Python 解释器副本(或软链接)
site-packages/存放项目所需的第三方库
环境激活脚本(如 activate
路径优先级 激活虚拟环境后,系统会优先使用虚拟环境中的 Python 和库,而非全局环境。

2.2 常用工具

工具 特点
venv Python 3.3+ 内置工具,轻量级,适合大多数场景
virtualenv 更强大的第三方工具,支持 Python 2/3,功能比 venv 多(如更灵活的路径配置)
conda 跨平台,适合科学计算和复杂依赖管理(需安装 Anaconda/Miniconda)
pipenv 结合 pip 和虚拟环境管理,自动生成 Pipfile 依赖描述文件

2.3 创建虚拟环境

▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰venv (Python 内置)▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰

步骤 1:创建虚拟环境

bash 复制代码
# 格式:python -m venv <虚拟环境路径>
python -m venv my_project_env  # 创建一个名为 my_project_env 的虚拟环境

步骤 2:激活虚拟环境

激活后,命令行提示符会显示环境名称(如 (my_project_env)),表明已进入虚拟环境。

步骤 3:在虚拟环境中安装依赖

bash 复制代码
# 安装指定包(仅影响当前虚拟环境)
pip install playwright pyee==12.1.1

# 或根据 requirements.txt 安装
pip install -r requirements.txt

步骤 4:退出虚拟环境

bash 复制代码
deactivate

▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰virtualenv(第三方工具)▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰

步骤 1:安装 virtualenv

bash 复制代码
pip install virtualenv

步骤 2:创建并激活环境

bash 复制代码
virtualenv my_project_env  # 创建
source my_project_env/bin/activate  # 激活(Linux/macOS)
my_project_env\Scripts\activate     # 激活(Windows)

后续操作与 venv 一致。

2.4 其他常用命令

📖 删除环境:直接删除虚拟环境目录

bash 复制代码
rm -rf my_project_env  # Linux/macOS
rmdir /s my_project_env  # Windows

📖 查看环境

python 复制代码
# Linux/macOS
ls ~/.virtualenvs    # 常见路径
ls */venv            # 项目内的环境

# Windows
dir C:\Users\ABC\venv

📖 查看虚拟环境路径

python 复制代码
echo $VIRTUAL_ENV        # Linux/macOS
echo %VIRTUAL_ENV%       # Windows

三、最佳实践

(1) 每个项目独立环境:避免跨项目依赖冲突。

(2) 依赖版本固化:生成 requirements.txt,记录当前环境的依赖版本

bash 复制代码
pip freeze > requirements.txt

然后在新环境中恢复依赖:

bash 复制代码
pip install -r requirements.txt

(3) 不要提交虚拟环境到版本控制:在 .gitignore 中添加虚拟环境目录(如 my_project_env/)。

(4) 环境命名清晰:使用如 venv.venvproject_name_env 等名称,便于识别。

相关推荐
折翅鵬6 分钟前
Android 程序员如何系统学习 MQTT
android·学习
~无忧花开~37 分钟前
JavaScript学习笔记(十五):ES6模板字符串使用指南
开发语言·前端·javascript·vue.js·学习·es6·js
大模型真好玩1 小时前
架构大突破! DeepSeek-V3.2发布,五分钟速通DeepSeek-V3.2核心特性
人工智能·python·deepseek
玩转C语言和数据结构1 小时前
Jupyter Notebook下载安装使用教程(附安装包,图文并茂)
ide·python·jupyter·anaconda·jupyternotebook·anaconda下载·anaconda安装包
2401_841495641 小时前
【自然语言处理】Universal Transformer(UT)模型
人工智能·python·深度学习·算法·自然语言处理·transformer·ut
CodeCraft Studio1 小时前
借助Aspose.Email,使用 Python 读取 Outlook MSG 文件
前端·python·outlook·aspose·email·msg·python读取msg文件
赵谨言1 小时前
基于python数据挖据的教学监控系统的设计与应用
开发语言·经验分享·python
哈基鑫2 小时前
深度学习之图像分类笔记
笔记·深度学习·分类
润 下2 小时前
C语言——深入理解函数声明定义和调用访问
c语言·开发语言·经验分享·笔记·程序人生·其他
一只自律的鸡2 小时前
【python】从Hello World到数据类型
开发语言·python