Python分享-with做了什么事?

简介: Python分享-with做了什么事?

with在python中通常被用来做资源管理,和异常处理的。

比如我们打开文件,经常能看到用的是with吧,with open这样的用法。这是显示的作用,异常处理就是隐式的。用with能确保,如果IO流出现问题不会阻塞其他进程。

如果不用with的话,该怎么处理文件io呢

file = open('file-path', 'w') 
try: 
    file.write('test') 
finally: 
    file.close()

能看到一定要确保最后调用文件对象的close方法。

如果用with来做,发现可以省略显式调用close方法,with会去做。

with open('file-path', 'w') as file: 
    file.write('test')

常用的需要close的场景,比如数据库的连接,一般需要close,还有例如smtp的连接。


相关文章
|
8月前
|
机器学习/深度学习 数据采集 自然语言处理
|
7月前
|
Python
Python中 * 号有什么用?
`Python`中的`*`号不仅仅用于乘法运算,还涉及数据结构构造与解构、函数参数处理等。它可以用于列表的展开构造和解构,例如在列表中插入或拆分子列表。在字典构造时,`**`用于合并字典。在函数参数中,`*`用于接收不定长位置参数,`**`用于接收不定长关键字参数。此外,`*`和`/`还能限制函数调用的方式,如`*`使后续参数必须为关键字参数,`/`则限制只能使用位置参数。
|
Python
Python: 1039 到底买不买
Python: 1039 到底买不买
81 0
|
Python
Python|取珠宝问题
Python|取珠宝问题
80 0
|
自然语言处理 算法 Java
【21天python打卡】第2天 python预备知识(2)
​​大家好,今天是21天python打卡的第2天,我们要想学好python,要先了解一些关于python的基础知识。上一篇我们介绍了python的基本概念,python编程思想,python安装以及python的运行方式,本文我们继续讲python的预备知识。
|
Python
Python樱花树
粉色系最爱!Python樱花树等你获取~ 哈喽小伙伴们好久不见啦,最近樱花开得好美吖,博主想和大家一起分享春天的快乐,一起来看看博主画的樱花树吧!
99 0
|
SQL Python
Python for Everything
dir(object):可以看出该对象有什么方法
119 0
|
Python
Python:使用2to3将Python2转Python3
Python:使用2to3将Python2转Python3
77 0
|
编解码 数据处理 索引
python xarray 简单介绍
python xarray 简单介绍
|
Python 数据采集
python HTML解析器
一般的爬虫解析 html 用  sgmlib 或者 lxml 解析  lxml 解析速度是 BS 的 20 倍以上 http://www.
1541 0