python异常处理

java中有try catch语句,用来抛出异常,python中也有类似的结构

异常处理

try-except语句

1
2
3
4
5
6
7
try:
nl=int(input('输入一个整数:'))
n2=int(input('输入另一个整数:'))
result=n1/n2
print('结果为:', result)
except ZeroDivisionError :
print('除数不能为0”)

try-except-else语句

在try-except语句后,如果try中没有异常,则执行else块

try-except-else-finally语句

finally块无论是否发生异常都会被执行,常用来释放try块中申请的资源

python中常见异常

异常 描述
ZeroDivisionError 除(或取模)零(所有数据类型)
IndexError 序列中没有此索引(index)
KeyError 映射中没有这个键
NameError 未声明/初始化对象
syntaxError 语法错误
ValueError 无效参数

traceback模块

使用traceback模块打印异常信息

1
2
3
4
5
import traceback
try:
pass
except:
traceback.print_exc()

调试

shift+F9进入调试模块

可以单步调试也可断点调试