一、try…except…else结构
"""
python的异常处理机制
try...except...else结构
如果try块没有抛出异常,则执行else块
如果try快抛出异常,则执行except块
"""
def fun1():
try:
a=int(input("请输入第一个整数:"))
b=int(input("请输入第二个整数:"))
result=a/b
except ZeroDivisionError as e:
print("Error",e)
except ValueError:
print("Error")
else:
print("结果为:", result)
fun1()
二、try…except…else…finally结构
"""
try...except...else...finally结构
finally块无论是否发生异常都会被执行,能常用来释放try块中申请的资源
"""
def fun2():
try:
a=int(input("请输入第一个整数:"))
b=int(input("请输入第二个整数:"))
result=a/b
except ZeroDivisionError as e:
print("Error",e)
except ValueError:
print("Error")
else:
print("结果为:", result)
finally:
print("ok")
fun2()
三、traceback模块
"""
traceback模块
使用traceback模块打印异常信息
"""
import traceback
try:
print("1、----------")
num=10/0
except:
traceback.print_exc()