为什么使用异常:
有时候在写程序的时候,会遇到各种各样的bug,然后程序会提示错误信息,但往往这个时候出现的信息很多,自己看都费劲,如果能输出一个比较简洁的提示信息,还是很赏心悦目的。
比如:判断输入的一个数是否是整数,如果是字符串就直接输出。如果是整数,就输出成想要的字符串格式:
def get_full_case_id(cid):
try:
cid = int(cid)
case_id = "case_{:05d}".format(cid)
print(1)
except ValueError:
case_id = cid
print(2)
except:
print(3)
return case_id
当输入是整数时:
val = get_full_case_id(12)
print(val)
输出
当输入是字符串时:
val = get_full_case_id("case_00012")
print(val)
输出
执行规则:
- 首先执行 try 语句模块的内容,如果符合条件,就不会执行except语句模块的内容;
- 如果 try 语句模块的内容不符合条件,就执行对应的except语句模块的内容(这里说对应的except语句模块,是可以有多个except语句模块);
- 如果 try 语句模块的内容不符合条件,而列举的except语句模块又不符合条件,可以在最后列出一个不用任何判断条件的except语句模块。