考虑以下代码:
try:
a = []
a[4] = 4
except ZeroDivisionError:
print('h')
finally:
print('y')
输出显示finally子句已执行:
y
Traceback (most recent call last):
File "work/finally.py", line 3, in <module>
a[4] = 4
IndexError: list assignment index out of range
但是,如果我将try子句更改为以下内容:
[] += [] - []
那么finally子句就不会被执行:
File "work/finally.py", line 2
[] += [] - []
^
SyntaxError: illegal expression for augmented assignment
这种行为的原因是什么?我在哪能读到这些?我在文件里没找到。你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐