码迷,mamicode.com
首页 > 编程语言 > 详细

python中try里有return时,finally还执行不执行

时间:2019-12-30 17:50:22      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:就是   fun   代码   ima   bsp   mamicode   返回   info   finally   

写一个函数,在try里返回,最后在finnaly里打印语句,代码如下

def fun1():
    x = 1
    try:
        print(执行try)
        x = x + 1
        # x = x / 0  # 执行次语句时,finally执行时,x的值依然是4
        return print(执行try的return, x)
    except:
     
print(异常) return x finally: x += 1 x += 1 print(finally执行:, x)

执行结果如下图所示:

技术图片

 

 

 由此可以看出,函数的执行顺序就是按照 try - except - finally的顺序执行,

也就是说,finally语句块总是会被执行的,并且如果finally里的x的值会继承try语句块里的x的值

python中try里有return时,finally还执行不执行

标签:就是   fun   代码   ima   bsp   mamicode   返回   info   finally   

原文地址:https://www.cnblogs.com/chongzi1990/p/12120500.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!