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 等名称,便于识别。

相关推荐
ZH15455891315 小时前
Flutter for OpenHarmony Python学习助手实战:GUI桌面应用开发的实现
python·学习·flutter
B站计算机毕业设计超人5 小时前
计算机毕业设计Hadoop+Spark+Hive招聘推荐系统 招聘大数据分析 大数据毕业设计(源码+文档+PPT+ 讲解)
大数据·hive·hadoop·python·spark·毕业设计·课程设计
B站计算机毕业设计超人5 小时前
计算机毕业设计hadoop+spark+hive交通拥堵预测 交通流量预测 智慧城市交通大数据 交通客流量分析(源码+LW文档+PPT+讲解视频)
大数据·hive·hadoop·python·spark·毕业设计·课程设计
CodeSheep程序羊5 小时前
拼多多春节加班工资曝光,没几个敢给这个数的。
java·c语言·开发语言·c++·python·程序人生·职场和发展
独好紫罗兰5 小时前
对python的再认识-基于数据结构进行-a002-列表-列表推导式
开发语言·数据结构·python
机器学习之心HML5 小时前
多光伏电站功率预测新思路:当GCN遇见LSTM,解锁时空预测密码,python代码
人工智能·python·lstm
2401_841495645 小时前
【LeetCode刷题】二叉树的直径
数据结构·python·算法·leetcode·二叉树··递归
王大傻09285 小时前
python 读取文件可以使用open函数的 r 模式
python
JarryStudy5 小时前
HCCL与PyTorch集成 hccl_comm.cpp DDP后端注册全流程
人工智能·pytorch·python·cann
编程小白20265 小时前
从 C++ 基础到效率翻倍:Qt 开发环境搭建与Windows 神级快捷键指南
开发语言·c++·windows·qt·学习