1.介绍
assert(断言):断定此处是对的,如果错了,就返回问题。
通常在测试程序时不知道哪里会出错,只有执行到最后才能看到错误信息。assert可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况
assert的语法格式为
assert expression
等价为:
if not expression:
raise AssertionError
此处若expression为false,则会触发异常,assert的作用是用来声名某个条件为True
为assert断言语句添加异常参数:
语法为:
assert expression [, arguments]
等价为:
if not expression:
raise AssertionError(arguments)
assert的异常参数,其实就是在expression后添加字符串信息,用来解释断言并更好知道哪里出了问题
例子
assert year in ["2007", "2012"], "year must be in ['2007', '2012']"
意思是:若year in ["2007","2012"] 为 True,则继续运行下一行代码,若为 False,则触发异常,并显示“year must be in ['2007', '2012']”
assert os.path.exists(txt_path), "not found {} file.".format(txt_name)
上面这段代码意思为:若txt_path这个路径存在,及os.path.exists(txt_path)为True,则继续执行下面的代码,若为False,则触发异常并显示"not found txt_path file“