首页 > 编程语言 >debug-聪明办法学Python

debug-聪明办法学Python

时间:2023-12-07 23:14:37浏览次数:36  
标签:Python 观测 聪明 debug bug 调试

如何Debug

调试理论

开始调试之前

通过不断地调试,比如在循环中打印某个元素检查

不得不承认机器永远只认编程语言

不过你必须要时刻关注你的变量名称是否发生变更,这在大改前必须要注意的

调试

已知程序有bug,如何找到?

调试困难的根本原因

因为bug的触发经历了漫长的过程

  • 需求->设计- >代码(状态机)->Fault(bug)->Error(程序状态错)->Failure
  • 我们只能观测到failure(可观测的结果错)
  • 我们可以检查状态的正确性(但非常费时)
  • 无法预知bug在哪里(每一行"看起来"都挺对)

image-20231204173643985

看懂报错信息

实在不行你可以在洛谷,力扣上面提问,或者直接找人工智能大模型等

总之,要程序实现正常运行,debug是你发现有问题很好的解决方法

标签:Python,观测,聪明,debug,bug,调试
From: https://www.cnblogs.com/zyh0/p/17884194.html

相关文章

  • Python之的sys、os、subprocess、shutil 模块
    一、sys模块 sys模块是与python解释器交互的一个接口1、sys.argv() 在Python中,sys.argv是一个列表,它包含了命令行参数传递给Python脚本的参数值。sys.argv列表的第一个元素是脚本的名称,后面的元素是传递给脚本的参数。importsys#打印脚本名称print("脚本名称:",s......
  • python第五次学习笔记
    1.调试: 调试(debugging)是暂停正在运行的程序,并解决程序中出现的问题的过程。调试Python程序非常简单,Python调试器会设置条件断点,并一次执行一行代码。接下来我们将使用Python标准库中的pdb模块调试Python程序。2.调试技术: 我们可以使用多种方法调试Python程序,以下是调试......
  • Python的json序列化模块
    一、jsonJson模块提供了四个功能:dumps、dump、loads、load1、前景什么叫序列化——将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化。序列化的目的以某种存储形式使自定义对象持久化;将对象从一个地方传递到另一个地方。使程序更具维护性在Python中,能够......
  • python的异步迭代器含义
    python的异步迭代器什么意思?什么是迭代器:迭代器是一种遵循迭代器协议的对象,可以被用在像for循环这样的迭代环境中。迭代器协议包含两个方法:__iter__():返回迭代器自身。__next__():返回迭代器的下一个元素。如果没有更多元素,则抛出StopIteration异常。就是这两个方法要包......
  • 如何Debug
    调试理论调试要摆正心态开始之前,记住机器永远是对的,bug可能就在你想不到的地方一、bug:第一种:理解错需求第二种:出现错误调试——已知有bug要怎样找调试困难根本原因需求——设计——代码(状态机)——Fault(bug)——Error(程序状态错)——Failure一旦某个环节出错代码就会错误,无......
  • python-文件IO操作实例
    一、如何复制文件1、使用shutil模块来复制importshutil#导入shutil模块#定义源文件和目的文件的路径#图片src_path="E:/python/py/基础篇/01_基础/06_文件操作/图片.jpg"dst_path="D:/图片.jpg"#文本src1_path="E:/python/py/基础篇/01_基础/06_文件操作/......
  • 聪明办法学Python 选学02
    聪明办法学Python学习笔记调试Debug1.如何进行Python程序调试,包括调试理论和常用模块与库的使用调试的必要性在于程序可能出现不符合预期结果的情况调试的困难在于bug的触发原因多种多样,只能看到最终结果2.调试代码的基本思路和方法,包括利用print和断言来解决简单......
  • Python-xlrd读取Excel指定列a~b行数据并绘图
    importxlrd#读取Excel文件wb=xlrd.open_workbook(r"E:\PythonStudyAll\TestD20231130\1111.xlsx")data=wb.sheet_by_name('Sheet1')#定义要读取的列和行范围column_index_x=0#第一列的索引为0column_index_y=1#第一列的索引为0start_row=2#起始行索......
  • 聪明办法学python最后一集
    聪明办法学python最后一集关于程序员如何进行debug首先编程哲学机器永远是对的可以使用print进行一部分的实验(这也算是我经常使用的方法)断点调试就是从上向下执行时进行的判断bug位置断点这个地方,主要分为两步:「找断点」和「打断点」。找断点,就是你想调试的代码块的......
  • 【Python】【OpenCV】检测直线和圆
     重新理解一下Canny方法:参数:image:输入的图像。threshold1:第一个阈值,用于检测边缘的强度梯度的下限。threshold2:第二个阈值,用于检测边缘的强度梯度的上限。apertureSize:Sobel算子的大小,可选值为3、5、7,默认值为3。L2gradient:一个布尔值,指示是否使用更精确的L2范数计算梯度......