Python with的用法


Posted in Python onAugust 22, 2014

在Python中,with关键字是一个替你管理实现上下文协议对象的好东西。例如:file等。示例如下:
  

from __future__ import with_statement 
with open('cardlog.txt','r') as item : 
  for line in item : 
    print line;

 
 在file的结束,会自动关闭该文件句柄。
 
在python2.6中,with正式成为了关键字
所以在python2.5以前,要利用with的话,需要使用:

from __future__ import with_statement

 
 它的原理如下:
所有实现上下文协议的对象都包含以下三种方法:
__context__()  它返回一个自我管理的上下文对象,或者一个真正意义的上下文管理器
 
__enter()__  进入上下文管理器,开始迭代
 
当with语句结束的时候,无论是正常结束还是抛出异常,都会执行__exit__(),该方法用于关闭资源连接。

Python 相关文章推荐
python字符串替换的2种方法
Nov 30 Python
用实例解释Python中的继承和多态的概念
Apr 27 Python
Python正则表达式教程之一:基础篇
Mar 02 Python
Python实现螺旋矩阵的填充算法示例
Dec 28 Python
对python捕获ctrl+c手工中断程序的两种方法详解
Dec 26 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
May 04 Python
Django 自动生成api接口文档教程
Nov 19 Python
在pytorch中对非叶节点的变量计算梯度实例
Jan 10 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
Apr 27 Python
在Keras中CNN联合LSTM进行分类实例
Jun 29 Python
Django多数据库联用实现方法解析
Nov 12 Python
Django缓存Cache使用详解
Nov 30 Python
Tornado服务器中绑定域名、虚拟主机的方法
Aug 22 #Python
python with statement 进行文件操作指南
Aug 22 #Python
Python中还原JavaScript的escape函数编码后字符串的方法
Aug 22 #Python
python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法
Aug 22 #Python
Python升级提示Tkinter模块找不到的解决方法
Aug 22 #Python
Python实现多行注释的另类方法
Aug 22 #Python
Python利用pyHook实现监听用户鼠标与键盘事件
Aug 21 #Python
You might like
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
JavaScript入门教程(9) Document文档对象
2009/01/31 Javascript
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
2010/04/14 Javascript
jquery 图片轮换效果
2010/07/29 Javascript
ExtJs默认的字体大小改变的几种方法(自己整理)
2013/04/18 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
JavaScript中Date.toSource()方法的使用教程
2015/06/12 Javascript
第一章之初识Bootstrap
2016/04/25 Javascript
jqueryMobile 动态添加元素,展示刷新视图的实现方法
2016/05/28 Javascript
Nodejs搭建wss服务器教程
2017/05/24 NodeJs
vue增删改查的简单操作
2017/07/15 Javascript
详解JSON Web Token 入门教程
2018/07/30 Javascript
vue h5移动端禁止缩放代码
2019/10/28 Javascript
[59:15]EG vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.26
2018/08/29 DOTA
python获取beautifulphoto随机某图片代码实例
2013/12/18 Python
bpython 功能强大的Python shell
2016/02/16 Python
python搭建虚拟环境的步骤详解
2016/09/27 Python
如何用itertools解决无序排列组合的问题
2017/05/18 Python
Python 爬虫图片简单实现
2017/06/01 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
Windows上使用Python增加或删除权限的方法
2018/04/24 Python
Python实现基于PIL和tesseract的验证码识别功能示例
2018/07/11 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
matlab、python中矩阵的互相导入导出方式
2020/06/01 Python
使用CSS变量实现炫酷惊人的悬浮效果
2019/04/26 HTML / CSS
Hotels.com香港酒店网:你的自由行酒店订房专家
2018/01/22 全球购物
高中自我评价分享
2013/12/05 职场文书
园艺师求职信
2014/03/10 职场文书
经贸日语专业个人求职信范文
2014/04/29 职场文书
护士感人事迹
2014/05/01 职场文书
计算机售后服务承诺书
2014/05/30 职场文书
纪律教育学习心得体会
2014/09/02 职场文书
辩论赛新闻稿
2015/07/17 职场文书
2016高考感言
2015/08/01 职场文书
Python可视化学习之seaborn绘制矩阵图详解
2022/02/24 Python
css3 选择器
2022/05/11 HTML / CSS