对 Python 异常处理的笔记

简述 Pro Python 这本书里对 Python 异常处理的讨论。 包括异常的捕获、处理,异常链,以及异常处理相关的 else, finally, with 关键字等内容。 最简单的捕获异常的方式 def count_lines(filename): try: return len(open(filename, 'r').readlines()) except: return 0 很少有人在生产环境写这样的代码,它会捕获所有的异常,可能包括你希望处理的,也包括你其实并不想处理的异常,都会走到 except 下的代码块里,执行了 return 0 这行代码。多数情况下,这可能不是我们想要的结果。 好的做法是明确写出自己希望要捕获、要处理的异常类型。 def count_lines(filename): try: return…