小编典典

python关键字“with”是做什么用的?

all

python关键字“with”是做什么用的?

示例来自:http
://docs.python.org/tutorial/inputoutput.html

>>> with open('/tmp/workfile', 'r') as f:
...     read_data = f.read()
>>> f.closed
True

阅读 136

收藏
2022-03-04

共1个答案

小编典典

在 python 中,该with关键字用于处理非托管资源(如文件流)。它类似于usingVB.NET 和 C#
中的语句。它允许您确保在使用资源的代码完成运行时“清理”资源,即使抛出异常也是如此。try/finally它为块提供“语法糖” 。

来自Python 文档

with语句阐明了以前将使用try...finally块来确保执行清理代码的代码。在本节中,我将讨论常用的语句。在下一节中,我将检查实现细节并展示如何编写用于该语句的对象。

with语句是一个控制流结构,其基本结构是:

with expression [as variable]:
    with-block

表达式被评估,它应该产生一个支持上下文管理协议的对象(即 has__enter__()__exit__()方法)。

__根据 Scott Wisniewski 的评论 更新固定的 VB 标注。 我确实withusing.

2022-03-04