Skip to content

015. PyCharm 项目、运行与调试

学习目标

这一节重新演示 PyCharm 的基础用法,重点是项目创建、解释器、运行配置和调试。

学完后,你应该能理解:

  • PyCharm 为什么适合 Python 后端开发;
  • 使用 VS Code 开发 Python 时需要补哪些插件;
  • 创建项目时为什么要绑定 Python 环境;
  • 运行按钮背后实际执行了什么;
  • Debug、断点、变量查看如何帮助理解代码;
  • PyCharm 里 Git 和数据库面板的基本用途。

PyCharm 和 VS Code 的选择

PyCharm 是 JetBrains 的 Python IDE,对 Python 项目支持更完整。

它的优势包括:

  • Python 解释器管理;
  • Conda 环境绑定;
  • 运行配置;
  • Debug 调试;
  • 包跳转;
  • 数据库工具;
  • Git 工具;
  • 代码补全和格式化。

如果你更习惯 VS Code、Cursor 或其他编辑器,也可以继续使用,但需要安装 Python 相关插件。

PyCharm 的缺点是更重、更占内存;VS Code 更轻、更流畅。课程选择 PyCharm,是为了减少 Python 环境和调试配置上的额外成本。

安装和版本

建议从官网下载较新的 PyCharm 版本。

如果旧版本表现异常,可能会影响:

  • Conda 环境识别;
  • 终端自动激活;
  • 包索引;
  • 调试体验;
  • 插件兼容。

macOS 上如果使用第三方来源的版本,遇到异常时可以优先换回官方版本排查。

创建项目时绑定环境

创建新项目时,要选择解释器环境。

常见选择是:

  • 使用已有 Conda 环境;
  • 使用项目自己的虚拟环境;
  • 使用系统 Python。

课程里更强调一个 Python 项目对应一个独立环境。这样不同项目依赖不会互相污染。

如果只是演示 PyCharm 用法,可以选一个能正常运行的环境;如果是真实项目,就要绑定项目实际使用的环境。

运行配置

点击运行按钮时,PyCharm 不是简单地“运行当前文件”。

它会根据运行配置决定:

  • 使用哪个 Python 解释器;
  • 执行哪个脚本;
  • 工作目录是什么;
  • 环境变量是什么;
  • 是否带参数;
  • 是否启用调试模式。

这就是为什么同一个 Python 文件,在终端能不能跑、在 PyCharm 能不能跑,可能会不一样。

对后端项目来说,工作目录尤其重要。工作目录错了,项目可能读不到 .env,也可能找不到内部模块。

运行当前文件和右键运行

可以用顶部运行按钮,也可以右键文件运行。

第一次运行时,PyCharm 会自动生成一个运行配置。生成后要检查它是否符合项目要求。

需要重点看:

  • Script path;
  • Python interpreter;
  • Working directory;
  • Environment variables。

如果后续要稳定启动后端服务,不要每次临时右键乱跑,最好维护一个固定的运行配置。

Debug 和断点

Debug 用来逐行观察代码执行过程。

常见用法:

  1. 在某一行打断点;
  2. 用 Debug 模式启动;
  3. 程序运行到断点暂停;
  4. 查看当前变量;
  5. 单步执行;
  6. 观察函数返回值。

例如请求一个接口后,可以在断点处观察:

  • response 是什么对象;
  • response.json() 返回什么;
  • 返回的数据类型是不是 dict
  • 变量在哪一步被赋值。

这比只看最终打印结果更适合学习后端代码。

调试第三方包里的代码

有时错误不是出在自己写的文件,而是发生在第三方包内部。

PyCharm 可以跳进包源码里看执行过程。

这对初学者不要求每一行都看懂,但要知道它能帮你回答几个问题:

  • 当前函数到底调用了哪个库;
  • 参数传进去后发生了什么;
  • 返回值在哪里生成;
  • 异常从哪里抛出。

以后调试 FastAPI、数据库驱动、模型 SDK 时,这个能力会很有用。

终端自动激活环境

PyCharm 打开 Terminal 时,通常会自动激活项目绑定的 Conda 环境。

如果项目绑定的是 ai3,终端前面也应该显示对应环境。

如果没有自动激活,先检查:

  • PyCharm 版本;
  • Python Interpreter 配置;
  • Conda 路径;
  • 终端 shell 设置;
  • 是否打开了错误项目。

很多 Python 问题,本质都是“当前终端环境”和“项目解释器环境”不一致。

Git 面板

PyCharm 内置 Git 工具。

可以查看:

  • 哪些文件被修改;
  • 每个文件的 diff;
  • 提交历史;
  • 当前分支;
  • commit 面板。

如果不习惯新版 commit 面板,也可以在设置里切换成旧式提交对话框。

无论用 IDE 还是命令行,重点是提交前能看清自己改了什么。

数据库面板

PyCharm 的 Database 面板可以连接数据库,能力接近 DataGrip。

连接数据库时要关心:

  • 数据库类型;
  • 主机地址;
  • 端口;
  • 用户名;
  • 密码;
  • 要查看哪个 database;
  • 驱动是否安装。

连接后可以查看表、数据和结构,也可以修改表结构。修改表结构时,PyCharm 会生成对应 SQL,让你知道这次操作实际会执行什么。

后面学习 MySQL / PostgreSQL 时,会更深入使用这个面板。

插件和快捷键

PyCharm 可以安装主题和快捷键插件。

如果你从 VS Code 迁移过来,可以安装:

  • VS Code 风格主题;
  • VS Code 快捷键映射。

这样手感会更接近原来的编辑器。

但插件不是越多越好。当前阶段先保证 Python 解释器、运行、调试、Git、数据库这些核心能力可用。

AI Agent 课程学习文档。