python as with 用法

作用
例如,前面在介绍文件操作时,一直强调打开的文件最后一定要关闭(f.close()),否则会程序的运行造成意想不到的隐患。但是,即便使用 close() 做好了关闭文件的操作,如果在打开文件或文件操作过程中抛出了异常,还是无法及时关闭文件,即便最终没有关闭文件,修改文件内容的操作也能成功。

为了更好地避免此类问题,不同的编程语言都引入了不同的机制。在 Python 中,对应的解决方式是使用 with as 语句操作上下文管理器(context manager),它能够帮助我们自动分配并且释放资源。

用法
with 表达式 [as target]:
代码块

用 [] 括起来的部分可以使用,也可以省略。其中,target 参数用于指定一个变量。with as 语句中的代码块如果不想执行任何语句,可以直接使用 pass 语句代替。

举例
假设有一个 a.txt 文件,其存储内容如下:
C语言中文网
http://c.biancheng.net
在和 a.txt 同级目录下,创建一个 .py 文件,并编写如下代码:
with open(‘a.txt’, ‘a’) as f:
f.write("\nPython教程")
运行结果为:
C语言中文网
http://c.biancheng.net
Python教程
可以看到,通过使用 with as 语句,即便最终没有关闭文件,修改文件内容的操作也能成功。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值