logo
40

Pip 与虚拟环境

⏱️ 25分钟

pip 与 virtualenv:让依赖可控、环境可复现

你现在可能会困惑什么

“本机能跑就行,为什么要折腾虚拟环境?”

因为项目 A 依赖 v1,项目 B 依赖 v2 很常见; 不隔离环境会频繁冲突。

一句话定义

pip 管理包依赖,virtualenv/venv 管理项目隔离环境。

生活类比

不同项目像不同厨房,调料版本不能混着用。

最小可运行例子

python3 -m venv .venv
source .venv/bin/activate
pip install requests
pip freeze > requirements.txt

课堂小测(5 分钟)

  1. 创建并激活 venv。
  2. 安装 2 个包并导出依赖。
  3. 在新目录用 requirements.txt 复现环境。

课堂小测参考答案与判分点

  • 参考答案方向:能写出可运行代码,并覆盖题目中的核心条件与边界输入。
  • 判分点 1(正确性):主流程结果正确,关键分支可执行。
  • 判分点 2(可读性):变量命名清晰,结构不过度嵌套。
  • 判分点 3(健壮性):对空值、类型错误或异常输入有基础保护。

迁移任务(课后)

把你的一个旧项目迁移到独立 venv 并补 requirements.txt

本节验收标准

你能独立做到:

  • 隔离项目依赖
  • 导出与恢复依赖
  • 避免全局环境污染

常见报错与调试步骤(新手版)

  • 报错看不懂:先读最后一行错误类型(如 TypeErrorNameError),再回到对应代码行定位。
  • 不确定变量值:在关键位置临时 print(变量, type(变量)),先确认数据是否符合预期。
  • 改了代码却没生效:确认文件已保存、运行的是当前文件、终端环境(venv)是否正确。

常见误区

  • 误区:所有项目共用全局 Python。
  • 正解:环境隔离是基础工程卫生。