python上下文管理器
Python 管理器 上下文
2023-06-13 09:15:31 时间
# 什么是上下文管理器
python中使用with
来使用上下文管理器.
在使用某个资源时,可以对该资源进行初始化和资源的清理两个操作,在这两个操作之间边成为上下文。
# 经典open案例
对文件操作时,需要打开文件及关闭文件。然后在这之间进行文件的操作。
f = open("a.txt")
f.write("hello world")
f.close()
使用上下文管理器 打开文件后,得到文件描述符,在with代码块中对f进行操作,结束时,会自动的进行关闭操作.
with open("a.txt") as f:
f.write("hello world")
# 自定义上下文管理器
# 类实现
进入上下文时,调用__enter__
方法进行初始化,退出时,调用__exit__
退出。
class A:
def __enter__(self):
print("进入")
def __exit__(self, exc_type, exc_val, exc_tb):
print("释放资源")
with A() as f:
print("hello")
print("world")
output:
进入
hello
world
释放资源
# 方法实现
使用contextlib.contextmanager
对方法实现上下文管理器. 使用生成器完成。
import contextlib
@contextlib.contextmanager
def test(a):
print("open..")
yield a
print("close")
with test(2) as f:
print(f)
output:
open..
2
close
相关文章
- python的安装教程_Python的安装
- python fileinput_Python之fileinput模块学习「建议收藏」
- python编程是啥-Python编程「建议收藏」
- [Python图像处理] 十一.灰度直方图概念及OpenCV绘制直方图
- 哪些软件是python编写出来的_用Python编程需要什么软件?
- python 递归排序[通俗易懂]
- Python函数大小的权衡
- 【说站】python PyQt组织上下文菜单选项
- 【说站】Python如何列出目录中的所有文件
- python pkl文件_Python字符串格式化输出的方式包括
- python舆情系统开发_什么是舆情
- python中copy.deepcopy_Python eval
- python自动化测试—Python自动化框架及工具
- Python metaclass 的原理和应用
- Python制作自动答题脚本,100%准确率,1秒10题提高效率
- Python学习:内建属性、内建函数的教程
- Python列表常用的函数和方法(2)_Python自学第二十一节
- python将获取到的数据保存到文本
- 【测试开发】python系列教程:Python数据类型转换
- 【测试开发】python系列教程:集合
- 2023最新Python阅读书籍推荐
- PyCharm下载:Python编程利器PyCharm 2022版安装激活汉化教程
- Python面向对象编程-上下文管理器
- 批量修改图片大小Python代码详解编程语言
- Linux查看Python版本的有效方法(linux查看python版本)
- Python驱动Oracle数据库(python操作oracle)
- 下的应用玩转Python:Linux下的Python应用之旅(python在linux)
- Python实现MySQL数据库的读取(python读取mysql)
- Python深入学习之上下文管理器