【问题标题】:What is the correct purpose of else block in try--except-else-finally in Python? [duplicate]在 Python 中 try--except-else-finally 中 else 块的正确目的是什么? [复制]
【发布时间】:2022-01-04 16:53:54
【问题描述】:

我正在学习 Python。我对“try--except--else--finally”语句顺序有一个根本性的怀疑。

据我了解,如果“try”中的代码通过,那么“else”中的代码也将被执行。如果是这样的话,'else'块的需要是什么? 'else' 块下的任何代码都可以在 'try' 块本身中。

感谢澄清

【问题讨论】:

    标签: python-3.x


    【解决方案1】:

    Else 块在try 块未引发错误时执行。
    Except 块在try 引发错误时执行。
    finally 块无论是否try 都会执行是否引发错误

    Docs about it can be found here

    【讨论】:

      【解决方案2】:

      过程是这样进行的:

      1. try部分正常执行
      2. 如果出现错误(异常),则会转到 except
      3. 如果try 部分没有出现错误,则将执行else
      4. 然后是finally 块。 finally 独立于异常。它总是被执行

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-13
      • 2012-11-06
      • 2017-06-26
      • 2013-08-25
      • 1970-01-01
      • 2012-06-25
      相关资源
      最近更新 更多