只有当try块中的代码没有引发异常时,else 块中的代码才会运行。如果您有一些代码在抛出异常时不想运行,但又不希望该代码抛出的异常被捕获,这将非常有用。
例如:
try:
data = {1: 'one', 2: 'two'}
print(data[1])
except KeyError as e:
print('key not found')
else:
raise ValueError()
# 输出:一
# 输出:值错误请注意,这种类型else:不能与以ifelse 子句开头的elif. 如果您有以下内容,if则需要在其下方缩进else::
try: ... except ...: ... else: if ...: ... elif ...: ... else: ...