找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 查看内容

final作用域的代码一定会被执行吗?

作者:模板之家 2019-6-10 15:33 5261人关注

Python中异常处理的finally代码块,正常情况下无论异常是否发生,finally都会进行执行,不希望finally执行,只能将finally块之前的try进行休眠。

正常的情况下,finally作用域的代码一定会被执行的,不管是否发生异常。哪怕是调用了sys.exit函数,finally也是会被执行的。

那怎么样才能让finally代码不执行了。

import time
choice = True
try:
    if choice:
        while True:
            pass
    else:
        print "Please pull the plug on your computer sometime soon..."
        time.sleep(60 * 60 * 24 * 365)
finally:
    print "Finally ..."

上面的代码主要是通过让流程停滞在try作用域里,从而实现了需求。


路过

雷人

握手

鲜花

鸡蛋
来自: Python学习网

全部回复(0)