异常是一个事件,该事件在程序执行过程中发生,影响程序的正常执行,一般情况下,在python无法正常处理程序时就会发生异常,当程序发生异常时,需要捕获并处理异常,否则程序会终止执行
异常处理
try语句的基本形式为try/except
语法:
try:
<语句> #运行别的的代码
excpt<名字>:
<语句> #如果try语句引发了异常
实例:
#!/usr/bin/python
try:
print(5/0)
except ZeroDivisionError:
print("You can't divide by zero!")
结果
You can't divide by zero!
try...except语句后可以添加一个else子句,当try子句的发生异常时,程序跳转到execpt子句,反之,程序将执行else子句
实例:
try:
result = 10/0
except ZeroDivisionError:
print("0不能被整除")
else:
print(result)
结果:
0不能被整除
使用raise抛出异常
当程序出现错误时,python会自动引发异常,也可以通过raise语句显示引发的异常,一旦执行了raise语句,raise语句后的代码将不会被执行。
实例
try:
s = None
if s is None:
print("s是空对象")
raise NameError #由于变量s为空,所以抛出异常NameError
print(len(s))
except TypeError:
print("空对象没有长度")