pdb是Python自带的轻量级调试工具,无需额外安装,适合命令行环境下的基础调试。
import pdb; pdb.set_trace(),程序运行到该行时会暂停并进入交互式调试模式。n(next):执行下一行代码(不进入函数内部);s(step):进入函数内部;c(continue):继续执行直到下一个断点或程序结束;p <变量名>(print):打印变量的当前值;l(list):显示当前代码的上下文(前后5行);q(quit):退出调试模式。ipdb是pdb的增强版,增加了语法高亮、自动补全等功能,提升调试体验。
pip install ipdb。import ipdb; ipdb.set_trace(),运行后进入调试模式,支持所有pdb命令,同时享受更友好的交互界面。PyCharm是JetBrains推出的专业Python IDE,提供直观的图形化调试界面,适合复杂项目。
sudo snap install pycharm-community --classic。VS Code是开源的轻量级编辑器,通过安装Python扩展可实现强大的调试功能。
F5或点击左侧调试图标,选择“Python”环境,生成launch.json文件(默认配置即可);F5启动调试,程序会在断点处暂停,通过调试面板查看变量、调用栈,或使用调试工具栏控制执行。pudb是纯Python实现的图形化调试器,提供类似图形界面的调试体验,适合偏好可视化但不想用重型IDE的用户。
pip install pudb。import pudb; pudb.set_trace(),运行后进入pudb界面,可通过方向键控制执行流程,查看变量值、调用栈等信息。日志记录是一种系统化的调试方法,适合大型项目或生产环境,通过记录程序运行状态定位问题。
logging模块,设置日志级别和格式:import logging
logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
logging.debug('变量值:%s', variable)、logging.info('程序进入某函数'),运行程序后日志会输出到控制台或指定文件,帮助跟踪程序执行流程。以上方法可根据项目需求和个人习惯选择:小型项目或快速调试可使用pdb/ipdb;复杂项目推荐使用PyCharm或VS Code;偏好图形化但不想用重型IDE可选择pudb;大型项目建议结合日志记录提升调试效率。