知行编程网知行编程网  2022-11-21 15:30 知行编程网 隐藏边栏  5 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python的with语句为什么会报错的相关知识,包括python for 循环,以及with语句这些编程知识,希望对大家有参考作用。

为什么python的with语句会报错

With介绍:

with是Python2.5引入的新语法。它是一个上下文管理协议。其目的是从流程图中去掉所有try、except和finally关键字以及资源分配和释放相关代码,简化try....except....finally处理流程。 with通过__enter__方法初始化,然后在__exit__做善后处理异常处理。所以用with处理的对象必须有两个方法:__enter__()和__exit__()。其中,__enter__()方法在语句体(with语句包裹的代码块)执行之前开始运行,__exit__()方法在语句体执行完退出后运行。

with语句适用于访问资源,保证无论在使用过程中是否发生异常,都进行必要的“清理”操作,释放资源,例如使用后自动关闭文件,自动获取和释放线程中的锁,等等

With语句的基本语法格式如下

with expression [as target]:
with_body

参数说明:

expression:是一个需要执行的表达式;

target:是一个变量或元组,存放expression表达式执行返回的结果,可选参数。

#coding=utf-8
with open("d:\\a.txt",'r') as fp:
    print fp.read()

with语句的工作原理:

with 之后的语句将被计算,返回对象的 __enter__() 方法将被调用。该方法的返回值将赋值给as关键字后的变量。当with后面的所有代码块都执行完后,会调用之前返回对象的__exit__()方法。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享