python assert
下面的是来自python help document的说明:
Assert statements are a convenient way to insert debugging assertions into a program:
assert语句是一种插入调试断点到程序的一种便捷的方式。
assert语句的使用格式
assert expression
这个语句是等价于下面的个句式:
if __debug__:
if not expression: raise AssertionError
assert也可以用于多个表达式的断言
assert expression1, expression2
我自己写的一个关于质数判定的assert使用示例
# -*- coding: UTF-8 -*-
def isPrime(n):
"""This function return a number is a prime or not"""
assert n >= 2, "输入的数字不正确"
# 这一行不满足条件,将声明(assert)错误,停止运行
from math import sqrt
for i in range(2, int(sqrt(n))+1):
if n % i == 0:
return False
return True
print isPrime(1)
运行结果:
Traceback (most recent call last):
File "E:\python\exercise\url1\src\cn\ouy\__init__.py", line 10, in <module>
print isPrime(1)
File "E:\python\exercise\url1\src\cn\ouy\__init__.py", line 4, in isPrime
assert n >= 2, "输入的数字不正确"
AssertionError: 输入的数字不正确
如果把上面的程序最后一行改为:
print isPrime(2)
再运行,结果输出是 True
assert使用起来还是很方便的,可以避免不必要的未知错误。


浙公网安备 33010602011771号