python assert 断言语句的作用
python assert 断言语句的作用
assert语句的应用场景
使用assert语句是一个很好的习惯. 我们在编写代码的时候, 不知道程序会在什么时候崩溃, 与其让它在深度运行时崩溃, 不如预先测试一个条件, 条件为真方可继续运行, 否则的话就让它立即崩溃掉(先抛出异常信息, 然后退出).
assert语句的作用
断言(声明)一个表达式必须为真, 否则的话就抛出异常信息, 让程序预先崩溃.
assert语句的语法格式
assert expression [,argument]
可以简单地理解为:
if not condition: raise 'message'
或者直接理解为:
声明 condi必须为真, 否则的话就抛出异常信息(arg)--让程序立即崩溃掉
举例
>>> list1 = range(5)
>>> list2 = range(6)
>>> assert len(list1)==len(list2), 'list length not equal'
>>> print 'Hellow World!'
Traceback (most recent call last):
File "<ipython-input-21-5a1acad0de8a>", line 3, in <module>
assert len(list1)==len(list2), 'list length not equal'
AssertionError: list length not equal
>>> list1 = range(5)
>>> list2 = range(5)
>>> assert len(list1)==len(list2), 'list length not equal'
>>> print 'Hellow World!'
Hellow World!
python assert 断言语句的作用的更多相关文章
- python - assert 断言 语句
使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单. 用法:在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行时崩溃,不如在出现 ...
- Python assert 断言函数
http://blog.csdn.net/hunyxv/article/details/52737339 使用assert断言是学习python一个非常好的习惯,python assert 断言句语格 ...
- python assert 断言详细用法格式
使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单.在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件 ...
- Python assert(断言)
Python assert(断言)可以分别后面的判断是否正确,如果错误会报错 示例: a = 1 assert type(a) is int print('No problem') 输出结果: No ...
- python assert断言函数
python assert断言是声明布尔值必须为真的判定,如果发生异常就说明表达式为假. 可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常. self ...
- Python之assert断言语句
关键字assert构成断言语句,主要是可以在我们书写一个新的程序时,可以使用它帮我们锁定bug范围. 表达式: assert 表达式 ‘窗口提示的信息’ 括号中的项目为选填项目,选填项目将会在表达式的 ...
- Python assert断言
assert断言:指定某个对象判断类型,不成立则报错. 使用环境 :接下来程序的执行,如果依赖前面的类型,不能报错的情况下使用. assert type(obj) is str print(&quo ...
- python assert断言用法
作用:断言函数运行状态 语法:assert condition,判断condition运行状态,若condition状态为false,则上报错误:AssertionError
- Python中pass语句的作用
http://mianshi.fenzhi.com/post/1529.html pass语句什么也不做,一般作为占位符或者创建占位程序,pass语句不会执行任何操作,比如:while False:p ...
随机推荐
- 管理idea Open Recent
在微服务开发过程中,随着服务的增加,日常需要在各个服务之间切换,这样idea 的 Open Recent 功能就显得特别有用,但是过多的最近打开记录中包括已经删除的工程或者无用的工程导致影响开发时切换 ...
- [算法总结] 6 道题搞定 BAT 面试——堆栈和队列
本文首发于我的个人博客:尾尾部落 0. 基础概念 栈:后进先出(LIFO) 队列:先进先出(FIFO) 1. 栈的 java 实现 import java.util.Arrays; public cl ...
- npm模块之http-proxy-middleware使用教程(译)
单线程node.js代理中间件,用于连接,快速和浏览器同步 Node.js代理简单. 轻松配置代理中间件连接,快速,浏览器同步等. 由流行的Nodejitsu http代理提供. TL;DR 代理/ ...
- SQLite与ContentProvider
http://www.rom007.com/SQLite-yu-ContentProvider.html 在Android中,对于数据的存贮,有几种方式,有文件方式,有文件式数据库方式,Android ...
- Linux内核分析——第四周学习笔记20135308
第四周 扒开系统调用的“三层皮” 一.内核.用户态和中断 (一)如何区分用户态.内核态 1.一般现在的CPU有几种不同的指令执行级别 ①在高级别的状态下,代码可以执行特权指令,访问任意的物理地址,这种 ...
- YQCB冲刺第二周绩效评价
标准队员 工作质量 20% 工作态度 20% 工作量 30% 工作难易程度 20% 团队意识 10% 总分 陈美琪 17 18 24 17 9 85 张晨阳 19 19 27 19 9 93 刘昭为 ...
- Fast Failure Detection and Recovery in SDN with Stateful Data Plane
文章名称:Fast Failure Detection and Recovery in SDN with Stateful Data Plane 利用SDN的带状态数据平面进行快速故障检测和恢复 发表 ...
- 个人项目——wc源程序特征统计
这一次要做的项目是wc——统计程序文件特征的命令行程序. 根据需求需求得到的模式为:wc.exe [parameter][filename] 在[parameter]中,用户通过输入参数与程序交互,需 ...
- php代码编写
在php文件里,写入header('content-type:text/html;charset = uft-8');<!-- ============================== -- ...
- java 栈和堆