网站首页 > 技术文章 正文
近期在项目自动化脚本编写中,经常会在本地pycharm中写好脚本,然后上传到linux中运行。由于局限于网络的一些原因,本地pycharm无法调试这些py文件,只有linux上才有py运行所需要的模块,所以遇到了一个比较头疼的问题,那就是上传到linux的脚本,如何degug,一时间成了一个问题。直到了解了pdb模块,顿时柳暗花明又一村。
pdb是什么?它是如何使用的呢?
pdb是一种linux中调试python脚本的工具,类似于windows下在pycharm中使用debug一样的效果。由于是命令行模式的linux系统,所以调试文件使用pdb就再方便不过了。
pdb有两种模式,第一种是直接在python文件中"import pdb;pdb.set_trace()",直接直接运行python脚本就可以了。另一种是用python -m pdb py文件的方式单步调试。
下面我们首先介绍一下pdb的参数含义。
p:print,打印内容,可以加需要打印的参数,pp是好看一点的打印,需要注意一点打印的变量需要执行之后才可以打印出来,也就是在变量执行的语句下一行才可以使用p
s:step,执行下一条命令,如果是函数则进入函数中,执行函数的第一句
n:next,执行下一条语句,如果当前语句是函数,则执行函数,然后执行当前函数语句的下一条
r:return,退出当前正在执行的函数
c:continue,继续执行语句,直到遇到下一个断点停止
l:list,展示当前正在执行的语句附近的代码
run:重新启动调试
q:quit,退出调试
b:break,指定代码中哪一行添加断点
cl:clear,清楚断点
接着我们用第一种调试方式做个示例。
下面就看到报错的位置了
下面是第二种调试方式
这是演示了以下打印变量的过程
在实际的运用中,如果能大概知道函数出问题的地方的时候,可以在py文件中需要调试位置加上“import pdb;pdb.set_trace()”。如果一时没有头绪,那就可以直接python -m pdb py文件,一步一步分析代码了。
猜你喜欢
- 2025-05-02 python执行.sql语法和文件(python oracle sql语句跟参数)
- 2025-05-02 python unittest 基本用法(python中testcase)
- 2025-05-02 免费定时运行Python程序并存储输出文档的服务推荐
- 2025-05-02 20 天学 Python 文件操作:Day 1 从 open() 开始
- 2025-05-02 一文掌握Python找到文件操作(python找到文件夹下指定文件)
- 2025-05-02 python 文件操作(python 文件操作模块)
- 2025-05-02 IDEA中配置Python环境并运行(idea 运行python)
- 2025-05-02 14《Python 办公自动化教程》os 模块操作文件与文件夹
- 2025-05-02 Python自动化办公自学笔记(八)文件操作
- 2025-05-02 使用 Python 监控文件系统(python监控文件变化)
- 258℃Python短文,Python中的嵌套条件语句(六)
- 258℃python笔记:for循环嵌套。end=""的作用,图形打印
- 257℃PythonNet:实现Python与.Net代码相互调用!
- 252℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 107℃原来2025是完美的平方年,一起探索六种平方的算吧
- 91℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 83℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)