python关键字"with"用于什么?
例如:http://docs.python.org/tutorial/inputoutput.html
>>> with open('/tmp/workfile', 'r') as f:
... read_data = f.read()
>>> f.closed
True
python关键字"with"用于什么?
例如:http://docs.python.org/tutorial/inputoutput.html
>>> with open('/tmp/workfile', 'r') as f:
... read_data = f.read()
>>> f.closed
True
在python中,在处理非托管资源(如文件流)时使用with
关键字.它类似于VB中的using
语句.NET和C#.它允许您确保在使用资源的代码完成运行时"清理"资源,即使抛出异常也是如此.它为try/finally
个块提供了"语法糖".
从Python Docs开始:
with
语句澄清了以前使用try...finally
个块来确保执行清理代码的代码.在本节中,我将讨论该语句,因为它将是常用的.在下一节中,我将判断实现细节,并展示如何编写与此语句一起使用的对象.
with
语句是控制流 struct ,其基本 struct 为:with expression [as variable]: with-block
表达式被求值,它应该产生一个支持上下文管理协议的对象(即,有
__enter__()
和__exit__()
个方法).
Update根据Scott Wisniewski的注释修复了VB标注.我确实把with
和using
搞混了.