51Testing软件测试论坛

标题: Assert语句在Python中的简明教程 [打印本页]

作者: 草帽路飞UU    时间: 2022-11-28 16:21
标题: Assert语句在Python中的简明教程
本帖最后由 草帽路飞UU 于 2022-11-28 16:24 编辑

1. 引言

  如果你是一个Python新手,那么你可能会在一些代码中看到assert关键字的语句。对于该语句,有人喜欢有人不喜欢,本文重点介绍Assert语句的作用以及什么时候应该使用该语句。

  闲话少说,我们直接开始吧!


  2. 基础语法


  Assert语句的基础语法如下:

  assert boolean_expression


  这里,我们期望上述boolean_expression取值为True,而assert关键字的作用是帮助我们再次检查它是否真的为True。


  此时如果我们断言是True,那么一切都好,没有什么错,我们可以像往常一样继续往下执行。


  但是,如果我们断言为False,则会发生如下断言错误:


  Traceback (most recent call last):


    File "/your/path/a.py", line 2, in <module>


      assert False


  AssertionError



  3. 基础用法


  我们可以将assert关键字作为代码中的某种健全性检查。比如在我们的代码中的某个点上,如果我们期望某些东西以某种方式出现,此时我们就可以使用assert关键字来验证它。

  例如,假设我们有一个复杂的函数get_price(),它主要用于检索某个物品的价格。这里,假设价格不能是负数。


  price = get_price()


  assert price >= 0      



  上述代码中,语句assert price>0主要用于检查并验证price不是负数。如果函数get_price()有错误并返回负数,则会发生断言错误并停止运行程序。


  4. 断言并输出提示信息


  更进一步,我们可以添加断言消息,该消息与断言错误一起显示。

  语法如下:


  assert boolean_expression, message

  举例如下:


  price = -1


  assert price > 0, "price must not be negative"




  输出如下:


  Traceback (most recent call last):


    File "/your/path/a.py", line 3, in <module>


      assert price > 0, "price must not be negative"


  AssertionError: price must not be negative




  5. 结论


  本文重点介绍了Python中的Assert关键字的基础语法和应用场景,并给出了相应的代码示例。







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2