Skip to content

Latest commit

 

History

History
176 lines (119 loc) · 3.75 KB

031-87374-调试程序_debug_next_下一步_list_pdb3.sy.md

File metadata and controls

176 lines (119 loc) · 3.75 KB
show version enable_checker
step
1.0
true

调试程序 🥊

回忆上次内容

  • 进到调试环境 没有思路
    • 就喊救命help
    • 可以看到各种帮助

图片描述

  • 如何一步步向前执行呢?

list

  • l(ist)
    • 可以列出 上下文11行的程序
    • 缩写是l

图片描述

多次列表

  • l只能查看一次程序列表
    • 因为原来都是电传打字机
      • 在当前位置
      • 打出来之后
      • 就不再打印了

图片描述

  • 如果 l .
    • 就会围绕着当前行(.)
  • 如果 l n
    • 就会显示从n之后的11行

图片描述

  • 这两种方式
    • 可以多次反复查看

完整代码

  • ll
    • 可以查看全部代码

图片描述

  • 以上三种查看方式
    • 可以在同一位置上多次查看

使用命令

  • 当前行前面 有个箭头 ->

图片描述

  • 确实可以 看到上下文
    • ->代表着 程序当前行的位置
      • 怎么 往下一行 走呢?

next

  • n(ext)
    • 可以 往下走一行
      • 缩写是n

图片描述

  • 试一下

图片描述

  • 把1982年输出了
    • 然后当前行来到了1995年
  • 如何判断 1995年
    • 在 整个程序中的位置 呢?

执行

  • l(ist)
    • 可以列出 当前行 的上下文
      • 找到 当前行的位置

图片描述

  • 在 第2行
    • 执行 next 命令
      • 就会输出 1995-----Guido in cnri
      • 然后 箭头(->) 跳转到 第3行
      • 准备 接下来 继续执行 第3行
  • 当然 也可以
    • 一路next 下去

一路next

图片描述

  • 一路next

完成调试

  • 一路next 下去
    • python 解释器 就是
  • 这样 一步步地 解释执行py程序 的

图片描述

  • 顺序执行 每行代码的

    • 一行行 挨排儿执行的
  • 终于来到 最后一行

    • 如果 到这里 再next
      • 会发生什么呢?

最后一步

  • 执行完 最后一句之后
    • 就会 --return--

图片描述

  • 这个时候
    • 已经到了 程序的尽头
    • next 会发生什么呢?

绕圈

  • 到头了 就又重来
    • 就会再从头执行 这个文件
    • 就重新开始了

图片描述

  • 从头开始了

退出pdb3

  • 查询帮助
    • pdb3 的帮助系统
      • 可以实时互动
  • 什么不会了
    • 可以直接和pdb3交互
    • 现场就可以给出解释

图片描述

  • q退出pdb3
    • 回到shell

总结

  • py文件 是 按照顺序
    • 一行行 挨排 解释执行的
    • 可以用 pdb3 hello.py
      • 来调试程序
  • 顺序执行
    • 程序 在文本中 从上到下 是
      • 一行行写的
    • 解释器 从上到下 是
      • 一行行解释的
    • 调试 也是 从上到下
      • 一行行 调试的

图片描述

  • 到现在也没有遇到一个bug
    • 如何才能让程序里面有bug 呢?
  • 我们下次再说!👋