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