上下文管理器可以通过使用更可读、更精简的代码实现资源的分配与释放
对于上下文管理器的使用,最常见的是使用with语句,with语句可构建资源的分配与释放的语法糖。先拿最常见的例子来说,即文件的打开与关闭。
正常语法:
f = file(filename,'w')
try:
f.write('test file')
finally:
f.close()
即正常情况下,你要显示的打开和关闭文件。但如果你用with语句,就会更可读,且永远不会因为忘记关闭文件而担忧:
with file(filename,'w') as f:
f.write('test file')