这是代码Python的 '与' 命令
with open(myfile) as f:
data = f.read()
process(data)
等效于将该
try:
f = open(myfile)
data = f.read()
process(f)
finally:
f.close()
或以下一个?
f = open(myfile)
try:
data = f.read()
process(f)
finally:
f.close()
文章:http://effbot.org/zone/python-with-statement.htm建议(如果我理解正确的话),后者是真实的。不过,前者对我来说会更有意义。如果我错了,我错过了什么?
它不等同于任一。如果'process'引发错误怎么办? 'with'不会在这里处理错误,但另外两个可以。 –
@ajcr:既不尝试:......最后:'。第二节相同。 –
我的错误。当它不在时,我不知何故读取“除了”。 –