一文读懂 with ... as 语句的来龙去脉
说到 with 大家通常看到的应该是这样的: 示例 1 with open('courses.txt') as f: for i in f: print(i.strip()) 打开一个文件,然后循环做一些事情。但是你知道为什么会有 with 吗?我们自己是不是能够写出可以作用在 with 关键字上的对象呢? 现在,我们带着上述两个问题来说一说 with 的由来以及上下文管理器相关内容。 with 语句的目的是简化 try/finally 模式。这种模式用于保证一段代码运行完毕后执行某项操作,即便那段代码由于异常、return 语句或sys.exit() 调用而中止,也会执行指定的操作。finally 子句中的代码通常用于释放重要的资源,或者还原临时变更的状态。 示例1的功能我们可以使用 try/finally 模式实