首页 > 编程语言 >聪明办法学python——debug

聪明办法学python——debug

时间:2023-12-07 14:46:23浏览次数:31  
标签:python 聪明 报错 调试程序 debug 断点 bug 调试

聪明办法学python——Debug

  1. 调试理论简单介绍

  2. 看懂报错信息

  3. 利用print方法调试程序

  4. 利用assert方法调试程序

  5. 利用ide调试程序

  6. 杂谈:利用AI来协助Debug

调试理论

开始之前,记住机器永远是对的,bug可能就在你想不到的地方

软件的两层含义:

人类需求在信息世界的投影和计算过程的精确(数学)描述

bug:第一种理解错需求或第二种实现错误

调试——已知有bug要怎样找

调试困难根本原因

需求——设计——代码(状态机)——Fault(bug)——Error(程序状态错)——Failure

一旦某个环节出错代码就会错误,无法预知bug在哪里,只能观测到可观测的结果错

看懂报错信息

学会看运行报错信息找到错误在哪,可以看line

print

在代码中插入print,根据有没有输出判断错误位置

assert

assert num<20,'num超出范围'

一旦超出范围,会打印后边那句话

Ide

添加断点进行调试,会停在断点处

继续——运行到下一个断点

单步跳过——只执行当前行

单步调试——进入函数内部进行调试

重启——重新运行

杂谈:vscode上有一个ChatGPT-4-biito可以免费使用,可以检查代码

 

 

标签:python,聪明,报错,调试程序,debug,断点,bug,调试
From: https://www.cnblogs.com/y-x-t-dbk/p/17881950.html

相关文章

  • Python中级之文件操作
    文件操作【一】基本用法在Python中,文件处理是常见的任务之一。以下是一些基本的文件处理操作和对应的Python语法:打开文件:使用open()函数来打开一个文件,可以指定文件名、打开模式和字符编码(可选)。#打开文件(只读模式)file=open('example.txt','r',encoding='utf-8')......
  • [转]python 随机生成一个请求User-Agent
    前言全局说明爬虫程序的第一部分通常都是导入我们爬虫所需要的库。为了安全,我通常都是使用fake_useragent库随机生成一个请求头User-Agent。一、安装模块pip3installfake_useragent二、模块使用#导入fake_useragent库中的UserAgent类fromfake_useragentimportUser......
  • 用Python写的一个采集快手直播间的程序
    今天给大家分享的是一个用python写的一个采集快手直播间的程序,内容非常简单,并且每个代码都有详细的中文解释,让我们一起来学习一下吧。```pythonimportrequestsfrombs4importBeautifulSoup#设置代理信息proxy_host="https://www.duoip.cn/get_proxy"proxy_port=8000......
  • Python requests 模块 get请求和post请求
    前言全局说明requests模块get请求和post请求一、get请求importrequestsurl="https://www.baidu.com"my_headers={ "User-Agent":"Mozilla/5.0", "Referer":"http://baiud.com"}res=requests.get(url)print(res.status_......
  • debug的调试
    debug的调试1.调试理论的简单介绍摆正心态,逐行尝试在计算机中,我们将机器看作状态机,同时我们遵循计算机不会犯错的原则,因此,当你设计的程序产生了与你意料相悖的结果,那就可以认为你的程序产生了bug。2.看懂报错信息逻辑错误,简单语法错误3.利用print方法调试程序逐行输出,判断......
  • Python 操作 MySQL 数据库
    Python标准数据库接口为PythonDB-API,PythonDB-API为开发人员提供了数据库应用编程接口。Python数据库接口支持非常多的数据库,你可以选择适合你项目的数据库:GadFlymSQLMySQLPostgreSQLMicrosoftSQLServer2000InformixInterbaseOracleSybase你可以访问Python数据库接口及API......
  • 【Lidar】基于Python的三维点云数据转二维平面+散点图绘制
    ​    最近一直在搞点云相关的操作,有时候在处理点云数据时需要查看处理后的数据是否满足需求,所以就想着写一套展示点云的代码。之前已经分享过如何可视化点云了,感兴趣的可以自己去看下:【Lidar】基于Python的Open3D库可视化点云数据。但是这个是3维展示,不满足我的项目需......
  • Python制作排班小工具【四】
    一、前言前面我们已经编写好生成排班的所有代码,在PyCharm中能正常运行,可是未安装Python环境的同事无法运行,本文就来介绍如何将Python文件打包成Windows可运行的exe文件。二、打包成exe项目结构很简单,只有两个Py文件加一张GUI图标:Step1:1.在Python项目虚拟环境和系统环境安装pyinstal......
  • python __new__ __init__
    classStudent():def__new__(cls,*args,**kwargs):##创建类的实例print('__new__')returnobject.__new__(cls)##此处返回才会调用__init__def__init__(self):##初始化类的实例print('__init__')classNewInt(int):def__new_......
  • [python]数据分析--数据清洗处理case1
    数据预处理案例1主要涉及pandas读取csv文件,缺失值和重复值处理,分组计数,字段类型转换,结果写入到Excel。根据要求对CSV数据集进行处理要求如下:保留数据关键信息:time、latitude、longtitude、depth、mag、region注意其中的region未直接提供,需要从数据集中的place中获取。......