我正在学习 Python,并且偶然发现了一个我无法轻易理解的概念:构造中的可选else
块try
。
根据文档:
try ... except 语句有一个可选的 else 子句,当它出现时,它必须跟在所有 except 子句之后。如果 try 子句不引发异常,则它对于必须执行的代码很有用。
我感到困惑的是,如果 try 子句没有在 try 构造中引发异常,为什么必须执行代码——为什么不简单地让它在相同的缩进级别跟在 try/except 之后呢?我认为这将简化异常处理的选项。或者另一种询问方式是else
块中的代码会做什么,如果它只是遵循 try 语句,独立于它,则不会这样做。也许我错过了一些东西,请赐教。
这个问题与这个问题有些相似,但我找不到我要找的东西。