异常信息的获取对于程序的调试非常重要,可以有助于快速定位有错误程序语句的位置。下面介绍几种python中获取异常信息的方法,这里获取异常(Exception)信息采用try...except...程序结构。如下所示:
try:
语句块
except 异常类型:
处理语句
else:
没有异常才会执行的代码
finall:
不管有没有异常都会执行的代码
try里面的语句块是当程序员觉得可能会抛出异常的代码:
except 异常类型:抛出的异常名字例如:ValueError,当然这种写异常名的方式也是比较low,除了特殊需要,一般我们都直接
用Execption这是常规错误类型的基类:
else:当它和try语句一起使用时,当try里的语句没有异常才会执行else里的代码块.
finall:
不管有没有异常都会执行的代码,
自定义异常:
由于有些异常系统并没有存入,当我们又有这个需求,这时我们可以通过创建一个新的异常类,
异常类应该继承自Exception类.
以下是一个判断年龄的异常:
先定义一个ageException继承了Exception ,定义一个函数来判断年龄,raise来引发自定义异常类型.
class ageException(Exception):
pass def Age(): age=int(input("请输入年龄:")) if age>0 and age<100: print(age) else: raise ageException("年龄只能在1-100之间") try: Age() except ValueError: print("年龄只能是数字") except ageException as ag: print(ag)