第130课时: 常见异常汇总和说明
Return 语句和异常处理问题:
由于return由两种作用:结束方法运行、返回值。
我们一般不把return放到异常处理结构中,而是放到方法最后。
【示例】return和异常结构的正确处理方式。
def test01():
print('step1')
try:
x=3/0
except BaseException as e:
print('step2')
print('异常')
finally:
print('step4')
print('step5')
return 'e'
print(test01())
step1
step2
异常
step4
step5
e
常见异常的解决
Python 中的异常都派生自 baseexception 类,本节我们测试和列出常见的一些异常,方便初学者掌握。
1 SyntaxError: 语法错误。
int a = 3
File “D:/PycharmProjects/MyTest/test.py”, line 10
int a = 3
^
SyntaxError: invalid syntax
2 NameError: 变量没有被声明。
print(a)
Traceback (most recent call last):
File “D:/PycharmProjects/MyTest/test.py”, line 11, in
print(a)
NameError: name ‘a’ is not defined
3 ZeroDivisionError: 除数为0错误。
a=3/0
Traceback (most recent call last):
File “D:/PycharmProjects/MyTest/test.py”, line 11, in
a=3/0
ZeroDivisionError: division by zero
4 ValueError: 数值错误。
float('wlz')
Traceback (most recent call last):
File “D:/PycharmProjects/MyTest/test.py”, line 12, in
float(‘wlz’)
ValueError: could not convert string to
float: ‘wlz’
5 TypeError: 类型错误。
123+'wlz'
Traceback (most recent call last):
File “D:/PycharmProjects/MyTest/test.py”, line 12, in
123+‘wlz’
TypeError: unsupported operand type(s) for
+: ‘int’ and ‘str’
6 AttributeError: 访问对象的不存在的属性。
a= 100
a.say()
这个对象没有say这个属性方法
7 IndexError: 索引越界异常。
a = [4,5,6]
a[10]
Traceback (most recent call last):
File “D:/PycharmProjects/MyTest/test.py”, line 12, in
a[10]
IndexError: list index out of range
8 KeyError: 字典的关键字不存在。
常见异常汇总: