zoukankan      html  css  js  c++  java
  • assert断言用法

    使用assert断言是学习python一个非常好的习惯,python assert 断言句语格式及用法很简单。在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,这时候就需要assert断言的帮助。本文主要是讲assert断言的基础知识。

    python assert断言的作用

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

    assert断言语句的语法格式

    assert python 怎么用?
    expression assert 表达式

    下面做一些assert用法的语句供参考:

    assert 1==1
    assert 2+2==2*2
    assert len(['my boy',12])<10
    assert range(4)==[0,1,2,3]
    如何为assert断言语句添加异常参数

    assert的异常参数,其实就是在断言表达式后添加字符串信息,用来解释断言并更好的知道是哪里出了问题。格式如下:

    assert expression [, arguments]
    assert 表达式 [, 参数]

    assert len(lists) >=5,'列表元素个数小于5'
    assert 2==1,'2不等于1'
    Python Assert 为何不尽如人意

    Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常。

    >>> assert 1 + 1 == 2
    >>> assert isinstance('Hello', str)
    >>> assert isinstance('Hello', int)

    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    AssertionError
    其实assert看上去不错,然而用起来并不爽。就比如有人告诉你程序错了,但是不告诉哪里错了。很多时候这样的assert还不如不写,写了我就想骂娘。直接抛一个异常来得更痛快一些。

    改进方案 #1

    一个稍微改进一丢丢的方案就是把必要的信息也放到assert语句后面,比如这样。

    >>> s = "nothin is impossible."
    >>> key = "nothing"
    >>> assert key in s, "Key: '{}' is not in Target: '{}'".format(key, s)

    Traceback (most recent call last):
    File "<input>", line 1, in <module>
    AssertionError: Key: 'nothing' is not in Target: 'nothin is impossible.'
    看上去还行吧,但是其实写的很蛋疼。假如你是一名测试汪,有成千上万的测试案例需要做断言做验证,相信你面对以上做法,心中一定有千万只那种马奔腾而过。

    .为续接下一行的符号

  • 相关阅读:
    IOS总结_IOS经常使用的方法集合、调用系统电话、设备区分、APP内永不锁屏
    huffman编码——原理与实现
    python字典构造函数dict(mapping)解析
    tomcat配置sqlserver数据库
    Tomcat全攻略
    第一次QQ群视频教育有感
    UIControl-IOS开发
    java内存分析总结
    Android笔记 之 旋转木马的音乐效果
    Android中API建议的方式实现SQLite数据库的增、删、改、查的操作
  • 原文地址:https://www.cnblogs.com/joelwang/p/11123036.html
Copyright © 2011-2022 走看看