[oeasy]python0026_调试程序_pdb3_帮助_help_求助_文档

调试程序_debug_next_下一步_list_pdb3  🥋

回忆上次内容

  • py程序是 按 顺序执行

    • 是一行行 挨排 执行

  • 程序员的kpi

    • 曾经 根据 代码数量

    • 现在kpi 也在 不断演化

    • 并不是 代码量 越多越好

图片描述

 

  • 写的代码(Code) 越多

    • 可能 出现的bug 就越多

  • 要的是 可用的Code

    • 而不是 不可用的Bug

  • 那 什么是bug 呢?

bug

  • bug 就是 程序错误

    • 比如 NameError

  • 要 找到错误

    • 然后 修复错误

  • 这就是 调试

    • debug

尝试调试

  • 想要 在程序里 debug

    • 首先 得一个程序

    • 还用 上次的 guido.py

  • 如果 上次的 没了

    • 就复制 下面这个

print("1982------Guido in cwi")print("1995------Guido in cnri")print("2000------Guido in beopen")print("2005------Guido in google")print("2012------Guido in dropbox")print("2020------Guido in microsoft")

  • 然后粘贴到

    • 网上系统的 剪贴板上

图片描述

 

  • 保存 在线剪贴板

准备环境

  • 在shell中 键入

    • vi guido.py

图片描述

 

  • :reg

    • 执行底行命令reg

    • 观察寄存器register的状态

图片描述

 

  • 系统寄存器"*"+

    • 都存着 刚复制的 源代码

粘贴代码

  • 回车 继续

    • 从 底行命令模式

    • 回到 正常模式

  • 在vim正常模式下

    • 出现"+字样

    • 使用的寄存器 是

    • 系统剪贴板 寄存器

    • "+

    • 键入"+

    • 观察窗口底行

图片描述

 

  • 然后 键入p

    • paste 粘贴

粘贴结果

图片描述

 

  • 键入:wq

    • 保存并退出vim

    • 回到shell

运行程序

python3 guido.py

  • 原来 是一下子 运行到最后

    • 现在可以  逐行 调试运行 吗?

图片描述

 

调试程序

  • 调试的意思是

    • 看有没有错误(bug)

    • 一行行地执行

pdb3 guido.py

  • 使用pdb3来进行调试

    • pdb的意思是python's debugger

图片描述

 

  • bug 是 虫子

    • 在编程中 指的是错误

  • de 是 降低 减少

    • decrease

    • defame

    • decolor

    • decline

  • debug 是 祛除虫子

    • 减少错误

    • 在编程中 指的是

    • 需要 逐行进行调试

  • 为什么 要逐行调试呢?

逐步调试

  • 由于程序 不知道 哪里出的问题

    • 所以才 逐步来执行

图片描述

 

  • 逐步调试运行的目的

    • 找到 bug所在的位置

    • 还原当时的犯罪现场

    • 也就是 debug

  • 我们这就去 debug

help

  • 进入 pdb3 guido.py

    • 就喊 救命🆘(help)

    • 不知道 怎么办

图片描述

 

  • help 给了

    • 很多的 命令主题(topic)

    • 还说 可以help 一下具体 命令主题

  • 查看哪个命令主题呢?

具体帮助

  • 先查看

    • 关于 help命令的 帮助

    • 对着 help 喊救命🆘(help)

图片描述

 

  • 没有参数 的 话

    • 显示 所有 命令的帮助

  • 1个参数  help

    • 显示 help 这个参数的帮助

缩略形式

  • h(elp) 的缩写是 h

    • elp 可以省略

图片描述

 

  • 以上四句

    • help 这个主题命令

    • 都可以查看

  • 这并不难 h h

    • 感觉掌握帮助系统了

    • 还可以怎么玩呢?

总结

  • 进到调试环境 没有思路

    • 就喊救命help

    • 可以看到各种帮助

图片描述

 

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

  • 我们下次再说!👋

  • 蓝桥->https://www.lanqiao.cn/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

相关推荐

  1. docker run --help帮助文档

    2024-07-23 04:56:05       37 阅读
  2. openssl3.2 - 帮助文档的整理

    2024-07-23 04:56:05       56 阅读
  3. Linux程序文件调试测试方法

    2024-07-23 04:56:05       33 阅读
  4. pdb 调试 python 代码

    2024-07-23 04:56:05       61 阅读
  5. 【笔记】Helm- 5 Chart模板指南-3 Values文件

    2024-07-23 04:56:05       48 阅读
  6. 程序人生 - (002)

    2024-07-23 04:56:05       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-23 04:56:05       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-23 04:56:05       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-23 04:56:05       45 阅读
  4. Python语言-面向对象

    2024-07-23 04:56:05       55 阅读

热门阅读

  1. 数学建模(5)——逻辑回归

    2024-07-23 04:56:05       14 阅读
  2. SpringMVC中的注解驱动

    2024-07-23 04:56:05       15 阅读
  3. C 语言基础概念总结

    2024-07-23 04:56:05       17 阅读
  4. word转pdf图变得模糊(解决)

    2024-07-23 04:56:05       14 阅读
  5. Nginx 中如何实现请求的排队机制?

    2024-07-23 04:56:05       16 阅读
  6. 2024.07.14校招 实习 内推 面经

    2024-07-23 04:56:05       18 阅读
  7. 【开源库学习】libodb库学习(十)

    2024-07-23 04:56:05       14 阅读
  8. 【Python】探索 Python 中的 divmod 方法

    2024-07-23 04:56:05       14 阅读
  9. 开发面试算法题求教

    2024-07-23 04:56:05       11 阅读