我试图了解这些与打开文件以进行逐行处理的方式之间的权衡/差异
with open('data.txt') as inf:
for line in inf:
#etc
对比
for line in open('data.txt'):
# etc
我了解 usingwith
可确保在退出“with-block”(套件?)时关闭文件(或反击异常)。with
所以自从我在这里了解到它以来,我一直在使用它。
重新for
循环:通过搜索网络和SO,似乎for
退出循环时文件是否关闭取决于实现?而且我找不到有关此构造如何处理异常的任何信息。有人知道吗?
如果我对上述任何内容有误,我将不胜感激,否则有理由for
在
with
? (假设你有选择,即不受Python版本限制)