首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将python " with“语句与try-except块一起使用

将python " with“语句与try-except块一起使用
EN

Stack Overflow用户
提问于 2010-09-04 19:35:29
回答 4查看 87.2K关注 0票数 109

这是将python " with“语句与try-except块结合使用的正确方式吗?:

代码语言:javascript
复制
try:
    with open("file", "r") as f:
        line = f.readline()
except IOError:
    <whatever>

如果是,那么考虑一下旧的做事方式:

代码语言:javascript
复制
try:
    f = open("file", "r")
    line = f.readline()
except IOError:
    <whatever>
finally:
    f.close()

这里"with“语句的主要好处是我们可以去掉三行代码吗?对于我来说,对于这个用例,似乎并不那么令人信服(尽管我知道"with“语句还有其他用法)。

编辑:上面两段代码的功能是否相同?

EDIT2:前几个答案大体上谈到了使用"with“的好处,但在这里这些好处似乎是微不足道的。多年来,我们都(或者应该)显式地调用f.close()。我认为一个好处是草率的程序员将受益于使用"with“。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3642080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档