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

相关推荐
狗都不学爬虫_3 分钟前
JS逆向 - (国外)SHEIN站 - 请求头(armorToken、Anti-in)
javascript·python·ajax·网络爬虫·wasm
Olrookie14 分钟前
若依前后端分离版学习笔记(一)——本地部署
笔记·后端·开源
一百天成为python专家17 分钟前
K-近邻算法
数据结构·python·算法·pandas·近邻算法·ipython·python3.11
这儿有一堆花18 分钟前
Python程序打包成EXE完全指南:四种方法详解与实战
python
微小冷26 分钟前
Vimba相机二次开发教程,基于Python
开发语言·python·二次开发·相机开发·vimba相机·vimba
PerfumerKarma38 分钟前
【WebGPU学习杂记】数学基础拾遗(2)变换矩阵中的齐次坐标推导与几何理解
学习·线性代数·矩阵
java1234_小锋39 分钟前
【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 热词数量分析日期统计功能实现
python·自然语言处理·flask
knight_20241 小时前
嵌入式学习日志————对射式红外传感器计次
stm32·单片机·嵌入式硬件·学习
山烛1 小时前
KNN 算法中的各种距离:从原理到应用
人工智能·python·算法·机器学习·knn·k近邻算法·距离公式
guozhetao1 小时前
【ST表、倍增】P7167 [eJOI 2020] Fountain (Day1)
java·c++·python·算法·leetcode·深度优先·图论