assert语句可以在程序中引入调试代码。assert的一般格式如下:
assert test [, msg]
其中test是一个表达式,其值应该为True或者False。如果test值为False,assert就会抛出AssertionError异常,并使用在assert中提供的可选信息msg,例如:
def func(file, data):
assert file, "write_data,: file not defined!"
assert语句不应用于必须执行以确保程序正确的代码,因为如果python运行在最优模式中(通过对解释器使用-O选项进入该模式),它将不会执行。特别是不能用assert语句检查用户输入。相反,assert语句用于检查应该始终为真的内容;如果assert引发异常,这意味着程序中存在bug,而不是用户出现了错误。