python assert断言是声明布尔值必须为真的判定,如果发生异常就说明表达式为假。 可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常。

self.assertEqual(a,b,msg=msg)   #判断a与.b是否一致,msg类似备注,可以为空

self.assertNotEqual(a,b,msg=msg)  #判断a与b是否不一致

self.assertTrue(a,msg=none)    #判断a是否为True

self.assertFalse(b,msg=none)   #判断b是否为false

self.assertAlmostEqual(a,b,places=none,msg=none,delta=none)   #该判断过程有点复杂,判断过程如下

注:places与delta不能同时存在,否则出异常

#若a==b,则直接输入正确,不判断下面的过程

#若delta有数,places为空,判断a与b的差的绝对值是否<=delta,满足则正确,否则错误

#若delta为空,places有数,判断b与a的差的绝对值,取小数places位,等于0则正确,否则错误

#若delta为空,places为空,默认赋值places=7判断

例 assertAlmostEqual(2,2) 正确,

assertAlmostEqual(5,2,delta=4) 正确

assertAlmostEqual(5,2,delta=2) 错误

assertAlmostEqual(2,2.005,places=1) 正确

assertAlmostEqual(2,2.05,places=3) 错误

self.assertNotAlmostEqual(a,b,places=none,msg=none,delta=none)  同上,但判断相反

注,delta与places不能同时存在,否则抛出异常

例  assertNotAlmostEqual(2,2) 错误

assertNotAlmostEqual(a,b,delta=c)  #a不等于b 同时 a-b>c 则正确,否则错误

assertNotAlmostEqual(a,b,places=2)

#a不等于b 同时|b-a|*0,01 不等于0 则正确,否则错误

self.assertSequenceEqual  #有空在研究,源码很长

self.assertListEqual #有空研究

self.assertTupleEqual #有空在研究

self.assertSetEqual #有空在研究

self.assertIn(a,b) 判断a in b是否成立,正确则True,否则为False

例: assertIn(“2” in “23”)  成功

assertIn(“1” in “23”)  失败

self.assertNotIn(a,b) 判断a in b是否成立,不成立则True 否则 False

例:assertIn(“2” in “23”)  失败

assertIn(“1” in “23”)  成功

self.assertIs(a,b) 判断a 与b的对象是否相同,成立则True,否则False

注,判断是否同一对象  id(a) 若id相同,则为同一对象

例 a,b=1,1.0

assertls(a,b)  失败

a,b=1,1

assertls(a,b)  成功

self.assertIsNot(a,b) 判断a 与b的对象是否相同,不成立True,否则False

self.assertDictEqual(a,b) #判断字典a和字典b是否相等,a,b为字典

self.assertDictContainsSubset

self.assertItemsEqual(a,b) #比较两字符串是否一致,同sorted(a)==sorted(b)

注:sorted排序,方法内部为,将a,b分别list,生成各自列表,在sorted排序在比对

self.assertMultiLineEqual(a,b) #比较a文本与b文本是否一致,即便多了个换行,也会区分

self.assertLess(a,b) #判断a<b 成立则通过,否则失败

self.assertLessEqual  #判断a<=b 成立则通过,否则失败

self.assertGreater  #判断a>b 成立则通过,否则失败

self.assertGreaterEqual  #判断a>=b 成立则通过,否则失败

self.assertIsNone(obj=””) #判断obj=None 成立则通过,否则失败

self.assertIsNotNone #判断obj=None 成立则失败,否则通过

self.assertIsInstance(a,b) #判断a的数据类型是否为b,isinstance(a,b) 成立则通过,否则失败

self.assertNotIsInstance  #判断同上相反

self.assertRaisesRegexp  #正则判断匹配,没仔细看,过程复杂

self.assertRegexpMatches(a,b) #正则匹配 同re.search(b,a)匹配有则成功,否则失败

注:a为匹配的正则表达式,必须字符型,b 为要匹配的内容

self.assertNotRegexpMatches #同上,判断相反

python assert断言函数的更多相关文章

  1. Python assert 断言函数

    http://blog.csdn.net/hunyxv/article/details/52737339 使用assert断言是学习python一个非常好的习惯,python assert 断言句语格 ...

  2. Python assert(断言)

    Python assert(断言)可以分别后面的判断是否正确,如果错误会报错 示例: a = 1 assert type(a) is int print('No problem') 输出结果: No ...

  3. python assert 断言语句的作用

    python assert 断言语句的作用 assert语句的应用场景 使用assert语句是一个很好的习惯. 我们在编写代码的时候, 不知道程序会在什么时候崩溃, 与其让它在深度运行时崩溃, 不如预 ...

  4. python assert 断言详细用法格式

    使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单.在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件 ...

  5. [转]matlab语言中的assert断言函数

    MATLAB语言没有系统的断言函数,但有错误报告函数 error 和 warning.由于要求对参数的保护,需要对输入参数或处理过程中的一些状态进行判断,判断程序能否/是否需要继续执行.在matlab ...

  6. python - assert 断言 语句

    使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单. 用法:在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行时崩溃,不如在出现 ...

  7. C++ 中assert断言函数的基本用法

    在我们的实际开发过程之中,常常会出现一些隐藏得很深的BUG,或者是一些概率性发生的BUG,通常这些BUG在我们调试的过程中不会出现很明显的问题,但是如果我们将其发布,在用户的各种运行环境下,这些程序可 ...

  8. C语言中assert()断言函数的概念及用法

    断言函数的格式如下所示: void assert (int expression);如果参数expression等于零,一个错误消息将会写入到设备的标准错误集并且会调用abort函数,就会结束程序的执 ...

  9. python assert断言用法

    作用:断言函数运行状态 语法:assert condition,判断condition运行状态,若condition状态为false,则上报错误:AssertionError

随机推荐

  1. 用WordPress建立专业网站教程 (一步步建站, 一步也不少)

    最新美国域名中心US Domain Center: http://www.usdomaincenter.com/ 建站教程 (10分钟上线, 无需备案): https://www.qiyewp.com ...

  2. VMware vCenter Server 6.5配置群集功能

    虚拟数据中心是一种容器,其中包含用于操作虚拟机的完整功能环境所需要的全部清单对象.可以创建多个数据中心,以实际需求创建 . 群集是一组主机,将主机添加到群集时,主机的资源将成为群集资源的一部分,群集管 ...

  3. IIS 配置详解 请求长度限制调整

    当上传一个超过30M的文件时,服务器会重定向至404.13页面,报错如下: HTTP Error 404.13 - Not Found The request filtering module is ...

  4. go语言学习笔记1 Go开发环境

    什么是Go?Go是一门并发支持.垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡的一门编程语言. Go的主要特点有哪些?* 类型安全 和 内存安 ...

  5. iOS - 跳转到系统设置

    一.跳转到自己应用设置(iOS8以上系统推荐使用) //跳转到自己应用干的设置配置页(如 定位.相机.相册 这些隐私配置) [[UIApplication sharedApplication] ope ...

  6. Qt编写自定义控件6-指南针仪表盘

    前言 指南针仪表盘,主要用来指示东南西北四个方位,双向对称两个指针旋转,其实就是360度打转,功能属于简单型,可能指针的绘制稍微难一点,需要计算多个点构成多边形,本系列控件文章将会连续发100+篇,一 ...

  7. Android Adb命令查看包名信息

    Android O 8.1.0 data/system/packages.listdata/system/packages.xmldata/system/package-usage.listdata/ ...

  8. [原]Jenkins(十九) jenkins再出发之jenkins邮件通知

    1.下载插件: 2.配置插件: 3.邮件插件配置 4.设置触发器:

  9. vscode编辑器自动生成.vue文件

    1.选择“文件 -> 首选项 -> 用户代码片段”,此时,会弹出一个搜索框,输入vue 选择vue后,编辑器会自动打开一个名字为vue.json的文件 2.复制以下内容到这个文件中: { ...

  10. 【CF666C】Codeword 结论题+暴力

    [CF666C]Codeword 题意:一开始有一个字符串s,有m个事件,每个事件形如: 1.用一个新的字符串t来替换s2.给出n,问有多少个长度为n的小写字母组成的字符串满足包含s作为其一个子序列? ...