我是 python 新手,想知道是否可以在不处理异常的情况下创建 try-catch-else 语句?
喜欢:
try:
do_something()
except Exception:
else:
print("Message: ", line) // complains about that else is not intended
以下示例代码向您展示了如何使用 pass 捕获和忽略异常。
try:
do_something()
except RuntimeError:
pass # does nothing
else:
print("Message: ", line)
虽然我同意 Jochen Ritzel 的答案很好,但我认为其中可能存在一个小疏忽。通过
pass
ing,异常正在被处理,但什么也没做。所以实际上,异常被忽略了。
如果你真的不想处理异常,那么异常应该是
raise
d。以下代码对 Jochen 的代码进行了更改。
try:
do_something()
except RuntimeError:
raise #raises the exact error that would have otherwise been raised.
else:
print("Message: ", line)