🐸 青蛙编程网
首页 / Python / 虚拟环境 venv / 6. IDE 配合

6. IDE 配合:VSCode 与 PyCharm

这是什么:IDE = 集成开发环境,写代码、提示补全、断点调试都在一个软件里完成;本章讲 VSCode 与 PyCharm 怎么认出你的 .venv。

为什么用:终端里万事俱备,但写代码在编辑器里。IDE 认错了环境,补全、调试、「运行按钮」都会对着全局环境表演,代码一跑就报错。

如何用:本章先在 VSCode 里选解释器、开自动激活,再给 PyCharm 指认同一个 .venv。

6.1 VSCode:三层体验

① 自动识别:VSCode 打开含 .venv/ 的目录后,右下角状态栏通常自动显示 Python 3.12.x ('.venv': venv)。没识别就手动选。

② 手动选解释器:

  1. Ctrl+Shift+P 打开命令面板
  2. 输入 Python: Select Interpreter
  3. 在列表点选 ('my-project': ...) .venv 那一项

③ 自动激活:选择解释器后,VSCode 每次新建内置终端会自动执行激活命令——右手边终端提示符自带 (.venv),忍不住双手夸 IDE 一回。

顺手在 .vscode/settings.json 里钉死这个项目在谁的解释器上(团队一致性):

{ "python.defaultInterpreterPath": "${workspaceFolder}/.venv" }

6.2 PyCharm:一劳永逸

  1. File → Settings → Project: xxx → Python Interpreter
  2. 齿轮 → Add Interpreter → Add Local Interpreter
  3. 选 Virtualenv Environment → Existing,路径指到 项目/.venv/bin|Scripts/python.exe

进一步:让 PyCharm 连「创建项目」都自动带环境——New Project 时直接勾选 New virtualenv environment., 从第一天就隔离。

6.3 为什么必须选对解释器

环境不对时 表现
补全 提示的全局包,你项目里根本没有
调试 断点在.venv 内命中错版本的库代码
运行 「ImportError」风暴:找不到装过的包
版本 用错 flask 版本,标准行为就不同

黄金一致性:终端里跑得动 ⇔ 编辑器运行键跑得动 ⇔ 团队拉克隆后跑得动。三者共享同一个 .venv 时天然成立。

6.4 常见坑

  1. VSCode 开了外层目录:.venv 在 work/blog-old/,但 VSCode 开了 work/ → 找不到环境。在工作目录直接打开含 .venv 的根(第 5 章布局也是这么设计的)
  2. 换环境忘切解释器:看到运行结果「不对劲」→ 想起第 5 章三问,同时别忘检查编辑器右下角
  3. 复制粘贴别人的 .venv:环境不可搬家(内部路径写死)。正确姿势 = 拿 requirements.txt 重建

6.5 动手改

  1. VSCode 打开一个建好 .venv 的项目,确认右下角显示环境名
  2. 故意选成全局解释器跑一段 import flask,观察报错后切回来
  3. PyCharm 用户:新项目直接用自带 New virtualenv 建环境

6.6 小结

  • VSCode:Python: Select Interpreter 选 .venv,内置终端自动激活
  • PyCharm:Settings → Interpreter → Existing 指向 .venv
  • 终端 / 编辑器 / 团队三方一致是舒适开发的底线;环境不可搬家,清单才是可移动资产

下一章:对比与展望:virtualenv / conda / poetry / uv 🐸

📥 下载本章代码

ZIP 内含本章全部代码文件与说明,解压即用,与教程内容同步生成。