python Debug 单步调试[通俗易懂]

python Debug 单步调试

大家好,又见面了,我是全栈君。

一直犯愁的是python的调试,曾经写c都是编译完了用gdb直接调试了,轻松愉快。如今遇到这么一个解释型的程序。不知道怎么办了。用log吧,有时就是一个小程序,不想写这么多代码。打屏吧。有时屏幕翻得快,也是挺郁闷的。今天最终好了,看到了一个实用的东西。
PDB


方法一:执行 python -m pdb myscript.py


(Pdb) 会自己主动停在第一行。等待调试,这时你能够看看 帮助


(Pdb) h


说明下这几个关键 命令




<断点设置 


(Pdb)b 10 #断点设置在本py的第10行


或(Pdb)b ots.py:20 #断点设置到 ots.py第20行


删除断点(Pdb)b #查看断点编号


(Pdb)cl 2 #删除第2个断点




<执行


(Pdb)n #单步执行


(Pdb)s #细点执行 也就是会下到,方法


(Pdb)c #跳到下个断点


<查看


(Pdb)p param #查看当前 变量值


(Pdb)l #查看执行到某处代码


(Pdb)a #查看所有栈内变量




<假设是在 命令行里的调试为:


import pdb


def tt():


pdb.set_trace()


for i in range(1, 5):


print i




<<< tt()


#这里支持 n p c 而已


< (3)tt()


(Pdb) n
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115852.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 直接sql 添加字段赋值

    直接sql 添加字段赋值SELECTuf.fans_idasfansId,u.`nickname`asnickname,u.`head`ashead,uf.`create_time`ascreateTime,1astypeFROM`user_fans`ufLEFTJOIN`user`uONuf.fans_id=u.idWHEREuf.`u…

    2022年10月25日
  • hbase拾遗「建议收藏」

    hbase拾遗「建议收藏」hbase拾遗

  • 视觉SLAM技术_解读团体技术

    视觉SLAM技术_解读团体技术近年来,SLAM技术取得了惊人的发展,领先一步的激光SLAM已成熟的应用于各大场景中,视觉SLAM虽在落地应用上不及激光SLAM,但也是目前研究的一大热点,今天我们就来详细聊聊视觉SLAM的那些事儿。视觉SLAM是什么?视觉SLAM主要是基于相机来完成环境的感知工作,相对而言,相机成本较低,容易放到商品硬件上,且图像信息丰富,因此视觉SLAM也备受关注。目前,视觉SLAM可…

  • 双线性插值 一文全讲解

    双线性插值 一文全讲解1、原理在图像的仿射变换中,很多地方需要用到插值运算,常见的插值运算包括最邻近插值,双线性插值,双三次插值,兰索思插值等方法,OpenCV提供了很多方法,其中,双线性插值由于折中的插值效果和运算速度,运用比较广泛。  越是简单的模型越适合用来举例子,我们就举个简单的图像:33的256级灰度图。假如图像的象素矩阵如下图所示(这个原始图把它叫做源图,Source):2343822674…

  • 发送激活邮件「建议收藏」

    发送激活邮件「建议收藏」发送激活邮件

  • hashset自定义去重规则_sql数据去重

    hashset自定义去重规则_sql数据去重publicstaticvoidmain(String[]args){List<String>list=newArrayList<>();list.add(“d”);list.add(“d”);list.add(“d”);System.out.println(list);list=remov…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号