python中的assert语句

server/2024/9/29 21:07:38/

1.什么是assert

程序运行过程中,所有变量的当前值组合构成了“状态“;

        每执行一段程序,状态就发生变化;如果程序有逻辑错误的bug,必定在处变量值的组合不符合预期,处于错误状态;

将对变量的预期写为断言,可以定位复杂的逻辑错误。   

语法: assert <表达式> [, <打印信息>]

assert是语句,而不是函数不需要加括号调用,如果表达式为true,语句不会产生任何效果,如果表达式为false,则程序终止,AssertionError,并显示<打印信息>

什么时候用/不用断言:

assert语句是一种调试程序的手段,仅用于定位可能的错误。断言不能视作算法的一部分;
删去所有的assert语句也不影响程序功能和特性·

try语句提高程序健壮性,assert不能;

程序正式运行可以跳过所有assert语句。   python -0 main.py可以跳过程序中的所有assert语句。

2. try except语句

       try-except语句用来实现异常处理。try块包含可能会引发异常的代码,except块用于处理异常。

       除了except 块处理异常,还可以使


http://www.ppmy.cn/server/124649.html

相关文章

使用Postman工具接口测试

文章目录 一、接口1.1 接口的概念1.2 接口的类型 二、接口测试2.1 概念2.2 原理2.3 特点 三、HTTP协议3.1 http协议简介3.2 URL格式3.3 HTTP请求3.3.1 请求行3.3.2 请求头3.3.3 请求体 3.4 HTTP响应3.4.1 状态行3.4.2 响应头3.4.3 响应体 3.4 传统风格接口3.5 RESTful风格接口 …

python --qt5(webview)/防多开/套壳网页/多次点击激活旧窗口

pyqtwebengine5.12 PyQt55.12class MyWindow(QMainWindow):def __init__(self):super(MyWindow, self).__init__()self.browser QWebEngineView(self) # 如果不写self则新生成一个窗口self.browser.setWindowTitle(技术领域占比分析)self.browser.setWindowIcon(QIcon(LOGO_P…

关于 SQL 的 JOIN 操作

关于 SQL 的 JOIN 操作 在关系型数据库中&#xff0c;数据通常分布在多个表中。为了进行有效的数据检索&#xff0c;我们需要从不同的表中组合数据&#xff0c;这时就需要使用 JOIN 操作。本文将深入探讨 SQL 中不同类型的 JOIN 及其用法&#xff0c;以帮助你在数据库查询中更…

Nginx反向代理配置支持websocket

一、官方文档 WebSocket proxying 为了将客户端和服务器之间的连接从HTTP/1.1转换为WebSocket&#xff0c;使用了HTTP/1.1中可用的协议切换机制&#xff08;RFC 2616: Hypertext Transfer Protocol – HTTP/1.1&#xff09;。 然而&#xff0c;这里有一个微妙之处:由于“升级”…

软件测试之单元测试/系统测试/集成测试详解

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、单元测试的概念 单元测试是对软件基本组成单元进行的测试&#xff0c;如函数或一个类的方法。当然这里的基本单元不仅仅指的是一个函数或者方法&#xff0…

LaTeX 编辑器-TeXstudio

TeXstudio 是一款开源跨平台 LaTeX 编辑软件&#xff0c;界面与 Texmaker 类似。TeXstudio 为用户提供互动式拼写检查、代码折叠、语法高亮、代码提示和自动完成等特性&#xff0c;功能丰富&#xff0c;界面美观&#xff0c;但软件本身不提供底层功能&#xff0c;需要使用者自行…

Web APIs 4:日期对象、时间戳、节点操作、swiper插件

Web APIs 4&#xff08;日期对象、节点操作、swiper插件&#xff09; 1.实例化日期对象 获得当前时间&#xff1a;const date new Date()获得指定时间&#xff1a;const data new Date(‘2024-1-1 08:30:30’) 2.日期对象方法 方法作用说明getFullTear()获得年份获取四位…

【Python】多个dataframe存入excel的不同的sheet表里,而不会被覆盖的方法

我发现&#xff0c;我原来用的多个工作簿存入的方法&#xff0c;发现不太可行&#xff0c;如果我用原来的方法&#xff0c;然后for循环&#xff0c;新的dataframe会把原来的覆盖掉&#xff0c;然后只剩下一个工作薄。原先的代码&#xff1a; with pd.ExcelWriter(file_name ) …