切换日光/暗黑模式
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 用来逐行观察代码执行过程。
常见用法:
- 在某一行打断点;
- 用 Debug 模式启动;
- 程序运行到断点暂停;
- 查看当前变量;
- 单步执行;
- 观察函数返回值。
例如请求一个接口后,可以在断点处观察:
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、数据库这些核心能力可用。