python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python异常处理try、else、finally

Python异常处理之try、else、finally的正确搭配使用

作者:echome888

当发生错误(或我们称之为异常)时,Python通常会停止执行并生成错误消息,这篇文章主要介绍了Python异常处理之try、else、finally的正确搭配使用,文中通过代码介绍的非常详细,需要的朋友可以参考下

很多代码把所有逻辑都塞进try,出错后又用宽泛的except兜底,结果异常原因被掩盖,资源也没有及时释放。记住各自的分工,代码会清晰很多。

一、各自的职责

二、正确搭配模式

成功时走try到else,失败时走except,清理工作交给finally:

def parse_number(text):
    try:
        value = int(text)
    except ValueError:
        print("不是整数")
        return None
    else:
        print(value)
        return value
    finally:
        print("结束")
print(parse_number("42"))
print(parse_number("abc"))

这样,成功和失败的分支互不干扰,结束提示总会打印。

三、常见误区

四、实用示例:读文件一定记得关文件

with open("demo.txt", "w", encoding="utf-8") as f:
    f.write("hello\n")
f = open("demo.txt", encoding="utf-8")
try:
    print(f.readline().strip())
finally:
    f.close()
    print("文件已关闭")

记住一句话:try负责尝试,except负责兜底,else负责成功后的事,finally负责清理。

总结

到此这篇关于Python异常处理之try、else、finally的正确搭配使用的文章就介绍到这了,更多相关Python异常处理try、else、finally内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文