zoukankan      html  css  js  c++  java
  • python 中 try except 带有return的用法

    def exe_try():
        try:
            print('code running')
            raise KeyError
        except KeyError as ex:
            print('key error')
            return 2
        else:
            print('other error')
            return 3
        finally:
            print('finally')
            return 4
    
    if __name__ == "__main__":
        ret = exe_try()
        print(ret)

    程序的运行结果为:

    code running
    key error
    finally
    4

    最后返回值是4,这是因为(1)try finally语句一定会执行finally中的语句,(2)return并不会真正的返回,而是将return语句的表达式执行后,再存到一个临时栈当中,

    当执行finally表达式中的语句时,会将4压入到栈中,所以最后的返回值是4.

  • 相关阅读:
    IOTest-InputStream-OutputStream
    JSP
    java链表
    区块链
    MySQL常用命令
    jQuery
    javascript
    Nginx
    Linux
    Hive
  • 原文地址:https://www.cnblogs.com/haozhangcool/p/13556674.html
Copyright © 2011-2022 走看看