Python try except finally执行顺序

2020-03-12  本文已影响0人  OrochiZhang

简单地说,try的处理流程是:

  1. try的代码块报异常
  2. 进入except处理
  3. 在except退出之前执行finally的逻辑,然后再执行except的return语句。
  4. 如果finally逻辑有return的话,会直接return退出,except的return语句是不会被执行到。

举两个例子:

def test_try(x):
    try:
        print(x[1])
    except:
        print(1)
        return 0
    finally:
        print('123')


print(test_try(1))

这个例子输出是
1
123
0
def test_try(x):
    try:
        print(x[1])
    except:
        print(1)
        return 0
    finally:
        print('123')
        return 3

print(test_try(1))

这个例子输出是
1
123
3
上一篇下一篇

猜你喜欢

热点阅读