python中的断言(assert语句)
目录
- python断言assert语句
- assert:python断言报错语句
- 1.设置assert报错语句
- 2.assert a,b
python断言assert语句
assert语句的格式是【assert 表达式,返回数据】,当表达式为False时则触发AssertionError异常
try: n=input("请输入一个数字:") assert n.isdigit(),"只能输入数字" print("你输入的是:",n) except Exception as ex: print("发现错误:",ex)
assert:python断言报错语句
assert用于判断一个表达式,在表达式结果为 False 的时候触发异常。若表达式结果为True,则不做任何反应。
代码示例1:
- In[1]中 assert 2>1 判断为True,所以可以继续执行下面的程序。
- In[2]中 assert 1>2 判断为False,所以报错AssertionError,程序中断。
1.设置assert报错语句
python也支持自己设置AssertionError的提示语句。格式为:
assert + 空格 + 要判断语句,“报错语句”
代码示例2:
设置AssertionError的报错提示语句为“常数比较大小出错”,在执行这条语句报错时候就可以很快知道bug出在哪。
实际应用的小例子:assert判断文件是否存在。
import os path_txt = "test.txt" assert os.path.exists(path_txt), "Not found text.txt"
程序路径中没有test.txt文件,因此会报错:
Traceback (most recent call last):
File "F:/PycharmProjects/test_assert.py", line 3, in <module>
assert os.path.exists(path_txt), "Not found text.txt"
AssertionError: Not found text.txt
2.assert a,b
还有一种格式是 assert a,b
表示判断表达式 a ,如果为 False,则输出表达式 b 的 值。
代码示例3:
在报错提示 AssertionError 的后面输出了 a 的值 1.2
代码示例4:
在报错提示 AssertionError 的后面输出了 type(a) :<class ‘float’>
总结:assert语句可以帮助程序员设置报错提醒,及时中止程序,找到bug。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Python中断言Assertion的一些改进方案
Python Assert 为何不尽如人意? Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常. >>> assert 1 + 1 == 2 >>> assert isinstance('Hello', str) >>> assert isinstance('Hello', int) Traceback (most recent call last): File "<input>
-
Python中优雅使用assert断言的方法实例
目录 什么是 assert 断言 断言和异常的使用场景 使用断言的几个原则 建议不使用断言的情况: 总结 什么是 assert 断言 Assert statements are a convenient way to insert debugging assertions into a program 断言声明是用于程序调试的一个便捷方式.断言可以看做是一个 debug 工具,Python 的实现也符合这个设计哲学,在 Python 中 assert 语句的执行是依赖于__debug__这个内置
-
Python断言assert的用法代码解析
在开发一个程序时候,与其让它运行时崩溃,不如在它出现错误条件时就崩溃(返回错误).这时候断言assert 就显得非常有用. python assert断言是声明布尔值必须为真的判定,如果发生异常就说明表达式为假. 可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常. assert的语法格式: assert expression 它的等价语句为: if not expression: raise AssertionError 这段代码用来检测数据类型
-
Python3 assert断言实现原理解析
语法格式如下: assert expression 等价于: if not expression: raise AssertionError assert 后面也可以紧跟参数: assert expression [, arguments] 等价于: if not expression: raise AssertionError(arguments) 以下为 assert 使用实例: >>> assert True # 条件为 true 正常执行 >>> assert
-
Python pass语句作用和Python assert断言函数的用法
目录 一.Python pass语句 二.Python assert断言函数 三.Python assert断言函数用法 一.Python pass语句 在实际开发中,有时候我们会先搭建起程序的整体逻辑结构,但是暂时不去实现某些细节,而是在这些地方加一些注释,方面以后再添加代码, 请看下面的例子: age = int( input("请输入你的年龄:") ) if age < 12 : print("婴幼儿") elif age >= 12 an
-
python assert断言的实例用法
断言声明是一种方便的程序调试方式. 1.可将断言视为debug工具,Python的实现也符合这种设计理念.assert语句的执行依赖于__debug__,且默认值为True. 2.如果__debug__为True,则仅执行assert语句. 实例 assert 可以同时声明两个 expression,例如 assert expression1, expression2 等价于 if __debug__: if not expression1: raise AssertionError(expre
-
python3 assert 断言的使用详解 (区别于python2)
python3 和python以前的版本有点不同 如果你断言的 语句正确 则什么反应都没有 但是如果你出错之后 就会报出 AssertionError 并且错误可以自己填写 格式 : assert+空格+要判断语句+双引号"报错语句" 例子: 出错时候 assert 1>5, "chucuo" 输出值为: --------------------------------------------------------------------------- As
-
python中的断言(assert语句)
目录 python断言assert语句 assert:python断言报错语句 1.设置assert报错语句 2.assert a,b python断言assert语句 assert语句的格式是[assert 表达式,返回数据],当表达式为False时则触发AssertionError异常 try: n=input("请输入一个数字:") assert n.isdigit(),"只能输入数字" print("你输入的是:",n) except E
-
IDEA中java断言assert语法及使用
前言 同C语言一样,Java也有断言关键字assert,它们的用法也比较相似. 注意:Java的断言是从1.4版本开始的,以前的版本不支持断言. 一.断言语法 java中断言有两种语法 assert 布尔表达式: assert 布尔表达式 :"错误信息提示": 第一种语法如果条件判断为ture程序继续执行,如果判断为false,则会终止程序并报出AssertionError异常. 第二种语法如果判断为ture程序也是继续执行,如果判断为false,则会终止程序并报出你所输入的错误信息.
-
Python中三种条件语句示例介绍
目录 if if…else if…elif…else 总结 if """ 条件语句: if if...else if...elif...else if 语句的格式: if 条件: 条件成立要执行的语句 条件:运算符构成---> bool """ print(1) print(2) result = input('请输入(y/n):') if result == 'y': print('good~') print('-'*20) if…els
-
python 中的条件判断语句的使用介绍
目录 1. 避免多层分支嵌套 2. 封装过于复杂的逻辑判断 3. 不同分支下的重复代码 4. 合理使用三元表达式 5. 常见技巧 5.1德摩根定律 5.2自定义类的魔法方法 5.3在条件判断中使用 all() / any() 5.4使用 try/while/for 中 else 分支 6. 常见陷阱 6.1与 None 值得比较 5.2and 和 or 的运算优先级 1. 避免多层分支嵌套 Python中利用缩进来替代 { }.如果多个 if 嵌套, 堪称 ” 嵌套 if 地狱 “ 下面的代码直
-
Python中的 pass 占位语句
前言: Python pass 是空语句,是为了保持程序结构的完整性:pass 不做任何事情,一般用做占位语句. Python 语言 pass 语句语法格式如下: pass 测试实例: 实例 #!/usr/bin/python # -*- coding: UTF-8 -*- # 输出 Python 的每个字母 for letter in 'Python': if letter == 'h': pass print '这是 pass块' print '当前字母 :', letter print "
-
Python中的异常处理相关语句基础学习笔记
异常是指因为程序出现了错误而在正常控制流以外采取的行动,其分为两个阶段,第一阶段是引发异常的错误,当系统检测到错误并且意识到异常条件,解释器(也可以是程序员引发异常)会引发一个异常通知前段控制流有错误发生,对异常的处理发生在第二阶段,异常引发后,可以调用很多不同的操作,可以是忽略错误,或是记录错误但不采取任何措施,采取补救措施后终止程序,或是江青问题的影响后设法继续执行程序 类似Python这样支持引发和处理异常的语言,可以让开发人员在错误发生时不仅有检测错误的能力,还可以采取更可靠的补救措施
-
Python中生成器和yield语句的用法详解
在开始课程之前,我要求学生们填写一份调查表,这个调查表反映了它们对Python中一些概念的理解情况.一些话题("if/else控制流" 或者 "定义和使用函数")对于大多数学生是没有问题的.但是有一些话题,大多数学生只有很少,或者完全没有任何接触,尤其是"生成器和yield关键字".我猜这对大多数新手Python程序员也是如此. 有事实表明,在我花了大功夫后,有些人仍然不能理解生成器和yield关键字.我想让这个问题有所改善.在这篇文章中,我将解
-
Python中的条件判断语句与循环语句用法小结
if语句 >>通用格式 if语句一般形式如下: if <test1>: <statements1> elif <test2>: <statements2> else: <statements3> 另外需要注意的是,Python中是没有switch/case语句的 while循环 while语句是Python语言中最通用的迭代结构,简而言之,只要顶端测试一直计算到真值,就会重复执行一个语句块. >>一般格式 while &l
-
Python中的if判断语句中包含or问题
目录 Python if判断语句中包含or python中if相关语句 1.if语句 2.if-else语句 3.if-elif-else(多重判断)语句 4.if嵌套语句 5.猜拳小游戏 6.三目运算符 Python if判断语句中包含or i= 0 if i == 1 or 5: print(i) 此时并非是判断i是否等于1或者5,而是(if i == 1) or (5): 所以这个if判断语句前半段 i==1为false, 则继续判断后半句:后半段为5,此时5为非零,即为true.所以整体
随机推荐
- 如何查看Apache的连接数和当前连接数
- PHP stristr() 函数(不区分大小写的字符串查找)
- $.ajax json数据传递方法
- .net三层结构初探分析第1/4页
- android Imageview 图片覆盖具体实现
- linux c 获取本机公网IP的实现方法
- javascript 函数参数限制说明
- 在PostgreSQL中使用数组时值得注意的一些地方
- 谈谈JavaScript中function多重理解
- Android自定义view实现太极效果实例代码
- 页面get请求 中文参数方法乱码问题的快速解决方法
- Java listener简介_动力节点Java学院整理
- PHP变量的定义、可变变量、变量引用、销毁方法
- 详解VueJS应用中管理用户权限
- Laravel5中实现模糊匹配加多条件查询功能的方法
- vue 组件中添加样式不生效的解决方法
- Android 8.1 Launcher3实现动态指针时钟功能
- 一步一步跟我学易语言之关于数组
- python并发编程多进程之守护进程原理解析
- Matplotlib中文乱码的3种解决方案