PyCharm 运行与调试
PyCharm 提供了强大的运行和调试工具,帮助开发者高效执行和排查 Python 代码问题。本部分将详细介绍环境配置、脚本运行和调试技巧。配置运行环境
设置 Python 解释器
打开解释器设置:设置 → 项目 → Python 解释器(Windows/Linux:Ctrl+Alt+S,Mac:⌘,)。
选择解释器:
虚拟环境(推荐):
Virtualenv/Conda/Pipenv系统解释器:直接使用已安装的 Python
远程解释器:连接服务器或 Docker 环境

安装依赖包:
在解释器界面点击
+搜索并安装包(如requests)或通过终端运行
pip install package_name

配置运行参数
打开运行配置:
顶部工具栏 →
运行 → 编辑配置(Run → Edit Configurations)或点击运行按钮旁边的配置下拉菜单

添加 Python 配置:点击 + → 选择 Python

关键参数:
脚本路径:选择要执行的
.py文件参数(Parameters):输入命令行参数(如
--port 8000)工作目录:设置脚本运行时的当前目录
环境变量:添加自定义环境变量(如
PYTHONPATH)

保存配置:点击 应用 → 确定。
运行 Python 脚本
单文件运行
方法一:右键运行:
- 
                
在编辑器中右键 →
运行 '文件名'(Run 'filename') 
方法二:工具栏运行:
- 
                
点击顶部工具栏的绿色运行按钮 ▶️
 
方法三:快捷键运行:
- 
                
Shift + F10(运行当前文件) - 
                
Ctrl + Shift + F10(运行当前编辑的文件) 

模块运行(如 Flask/Django)
配置模块运行:在运行配置中选择模块名称而非脚本路径。
例如:
模块名:
flask参数:
run --port=5000
运行带参数的模块:
# 例如运行 Django 开发服务器 python manage.py runserver 0.0.0.0:8000
在运行配置的 "参数" 栏输入:runserver 0.0.0.0:8000

调试代码
设置断点
添加断点:
- 
                
在行号左侧单击(出现红色圆点)
 - 
                
右键断点可设置条件(如
x > 10) 
断点类型:
- 
                
行断点:暂停在指定行
 - 
                
异常断点:在抛出异常时暂停(
运行 → 查看断点 → 添加 Python 异常断点) 
启动调试:
- 
                
点击工具栏的
🐞 调试按钮 - 
                
或快捷键
Shift + F9 

变量监视(Watches)
查看变量:
- 
                
调试启动后,在
变量(Variables)面板查看当前作用域的变量值 - 
                
双击变量可编辑值(用于临时测试)
 
添加监视:
- 
                
在
监视(Watches)面板点击+ - 
                
输入变量名或表达式(如
len(items)) 
调试控制操作
| 操作 | 快捷键(Win/Linux) | 快捷键(Mac) | 说明 | 
|---|---|---|---|
| 步过(Step Over) | F8 | F8 | 执行当前行,不进入函数内部 | 
| 步入(Step Into) | F7 | F7 | 进入函数内部调试 | 
| 步出(Step Out) | Shift + F8 | ⇧ + F8 | 执行完当前函数,返回到调用处 | 
| 继续(Resume) | F9 | ⌘ + F8 | 继续运行直到下一个断点 | 
| 停止(Stop) | Ctrl + F2 | ⌘ + F2 | 终止调试会话 | 
调试控制台(Debug Console)
交互式调试:
- 
                
在调试过程中,可在
调试控制台直接执行 Python 代码 - 
                
例如:临时调用函数或修改变量
 
评估表达式:
- 
                
选中代码 → 右键 →
评估表达式(Evaluate Expression) - 
                
或快捷键
Alt + F8 
高级调试技巧
远程调试
配置远程解释器:
- 
                
文件 → 设置 → Python 解释器 → 添加远程解释器 - 
                
支持 SSH、Docker 和 Vagrant
 
调试远程代码:
- 
                
断点和调试操作与本地调试一致
 
多进程调试
子进程调试:
- 
                
在运行配置中勾选
在子进程中调试(Debug child processes) - 
                
适用于
multiprocessing或subprocess场景 
附加到进程:
- 
                
运行 → 附加到本地进程(Attach to Local Process) - 
                
选择正在运行的 Python 进程
 
常见问题解决
Q1:断点不生效?
- 
            
检查解释器是否匹配项目环境
 - 
            
确保代码已保存(
Ctrl + S) - 
            
检查断点是否被禁用(断点图标为灰色)
 
Q2:如何调试单元测试?
- 
            
在测试文件中右键 →
调试 '测试名' - 
            
或使用
pytest/unittest专用运行配置 
Q3:调试时变量显示 "Unknown"?
- 
            
优化代码结构,避免过于复杂的表达式
 - 
            
使用
Watches手动添加监视变量 
调试快捷键
| 场景 | 操作 | 
|---|---|
| 快速运行当前文件 | Shift + F10 | 
                
| 启动调试 | Shift + F9 | 
                
| 条件断点 | 右键断点 → 设置条件 | 
| 查看变量值 | 调试时在 Variables 面板查看 | 
                
| 临时执行代码 | 调试控制台输入命令 | 
| 多进程调试 | 运行配置中勾选 Debug child processes | 
                
       
点我分享笔记