《Python全栈开发:Python 上下文协议模块(contextlib)》

一、上下文协议模块(contextlib)

  • 上下文管理器的任务是:代码块执行前准备,代码块执行后收拾

1、如何使用上下文管理器:

  • 打开一个文件,并写入"hello world"

filename="my.txt"
mode="w"
f=open(filename,mode)
f.write("hello world")
f.close()
  • 发生异常时(如磁盘写满),就没有机会执行第5行。当然,我们可以采用try-finally语句块进行包装:
writer=open(filename,mode)
try:
    writer.write("hello world")
finally:
    writer.close()
  • 当我们进行复杂的操作时,try-finally语句就会变得丑陋,采用with语

你可能感兴趣的:(【,Python,基础,】,python)