python断言语句_Python中的断言(Assertions in Python)

Python中的断言(Assertions in Python)

断言是一种完整性检查,您可以在完成程序测试后打开或关闭。

想到断言的最简单方法是将它比作一个raise-if语句(或者更准确,即使是if-if-not语句)。 测试表达式,如果结果为false,则引发异常。

断言由assert语句执行,这是Python的最新关键字,在1.5版中引入。

程序员经常在函数的开头放置断言以检查有效输入,并在函数调用之后检查有效输出。

The assert 语句

遇到assert语句时,Python会对伴随的表达式求值,这有望成为现实。 如果表达式为false,则Python会引发AssertionError exception 。

assert的语法是 -assert Expression[, Arguments]

如果断言失败,Python使用ArgumentExpression作为AssertionError的参数。 可以使用try-except语句像任何其他异常一样捕获和处理AssertionError异常,但如果不处理,它们将终止程序并产生回溯。

例子 (Example)

这是一个将温度从开尔文度转换为华氏度的函数。 由于开尔文的零度和它一样冷,如果看到负温度,该功能就会失效 -#!/usr/bin/python

def KelvinToFahrenheit(Temperature):

assert (Temperature >= 0),"Colder than absolute zero!"

return ((Temperature-273)*1.8)+32

print KelvinToFahrenheit(273)

print int(KelvinToFahrenheit(505.78))

print KelvinToFahrenheit(-5)

执行上述代码时,会产生以下结果 -32.0

451

Traceback (most recent call last):

File "test.py", line 9, in

print KelvinToFahrenheit(-5)

File "test.py", line 4, in KelvinToFahrenheit

assert (Temperature >= 0),"Colder than absolute zero!"

AssertionError: Colder than absolute zero!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值