python读取整个文件的方法是_python – 立即读取整个文件

它们都非常pythonic.要解决第二个问题,在第二个函数中,文件确实会自动关闭.这是与with语句一起使用的协议的一部分.具有讽刺意味的是,不保证在第一个示例中关闭该文件(更多关于为什么在一秒钟内).

最终,我会选择使用with语句,这就是为什么 – 根据PEP 343:

with EXPR as VAR:

BLOCK

被翻译成:

mgr = (EXPR)

exit = type(mgr).__exit__ # Not calling it yet

value = type(mgr).__enter__(mgr)

exc = True

try:

try:

VAR = value # Only if "as VAR" is present

BLOCK

except:

# The exceptional case is handled here

exc = False

if not exit(mgr, *sys.exc_info()):

raise

# The exception is swallowed if exit() returns true

finally:

# The normal and non-local-goto cases are handled here

if exc:

exit(mgr, None, None, None)

正如您所看到的,在这种情况下您可以获得很多保护 – 无论在干预代码中发生什么,您的文件都可以保证关闭.这也有助于提高可读性;想象一下,如果每次打开文件时都必须放置这么大的代码块!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值