Appearance
错误处理
- python 处理程序在运行中出现的异常和错误
捕获异常
- 通过
try/except语句捕获异常
python
try:
a=1/0
except ZeroDivisionError as e:
print('除数不能为0',e.args) # ('divisor cannot be zero',)
except ValueError:
print('ValueError') # ValueError 除数不能为0
except Exception:
print('其他错误')
finally:
print('finally') # 无论是否有异常,finally 语句都会执行抛出异常
- 通过
raise语句主动抛出异常
python
def func1(x):
if x<0:
raise Exception('x不能小于0')
return x*2断言
- 断言的使用格式:
assert 条件, 错误信息
python
# 如果条件为假,抛出 AssertionError 异常
assert 1==2, '1 不等于 2'
# 等价于
if 1!=2:
raise AssertionError('1 不等于 2')主程序中拦截异常
python
def func1(num):
if num < 0:
raise Exception("参数不能小于0")
if __name__ == '__main__':
try:
func1(2)
except Exception as e:
print("未知错误 %s" % e)