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计算字符宽度的方法
Jun 14 Python
Python通过命令开启http.server服务器的方法
Nov 04 Python
Python实现定时精度可调节的定时器
Apr 15 Python
使用python判断你是青少年还是老年人
Nov 29 Python
Python 2/3下处理cjk编码的zip文件的方法
Apr 26 Python
pandas.cut具体使用总结
Jun 24 Python
python分数表示方式和写法
Jun 26 Python
python 控制Asterisk AMI接口外呼电话的例子
Aug 08 Python
Python性能分析工具Profile使用实例
Nov 19 Python
python使用opencv在Windows下调用摄像头实现解析
Nov 26 Python
解决Django部署设置Debug=False时xadmin后台管理系统样式丢失
Apr 07 Python
python3+selenium获取页面加载的所有静态资源文件链接操作
May 04 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 字符串 小常识
2009/06/05 PHP
php数据结构与算法(PHP描述) 快速排序 quick sort
2012/06/21 PHP
php实现兼容2038年后Unix时间戳转换函数
2015/03/18 PHP
CI配置多数据库访问的方法
2016/03/28 PHP
php基于PDO连接MSSQL示例DEMO
2016/07/13 PHP
php版微信开发Token验证失败或请求URL超时问题的解决方法
2016/09/23 PHP
JavaScript中“过于”犀利地for/in循环使用示例
2013/10/22 Javascript
extJS中常用的4种Ajax异步提交方式
2014/03/07 Javascript
JQuery中使用ajax传输超大数据的解决方法
2014/07/14 Javascript
jQuery插件ajaxFileUpload实现异步上传文件效果
2015/04/14 Javascript
原生js实现弹出层登录拖拽功能
2016/12/05 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
JavaScript数据结构学习之数组、栈与队列
2017/05/02 Javascript
温故知新——JavaScript中的字符串连接问题最全总结(推荐)
2017/08/21 Javascript
Angularjs 手写日历的实现代码(不用插件)
2017/10/18 Javascript
canvas轨迹回放功能实现
2017/12/20 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
2018/09/26 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
2019/06/05 Javascript
详解Vue.js 作用域、slot用法(单个slot、具名slot)
2019/10/15 Javascript
一则python3的简单爬虫代码
2014/05/26 Python
常用python编程模板汇总
2016/02/12 Python
python 生成器生成杨辉三角的方法(必看)
2017/04/10 Python
Django添加favicon.ico图标的示例代码
2018/08/07 Python
在django中实现页面倒数几秒后自动跳转的例子
2019/08/16 Python
PyQt+socket实现远程操作服务器的方法示例
2019/08/22 Python
Keras Convolution1D与Convolution2D区别说明
2020/05/22 Python
新手学python应该下哪个版本
2020/06/11 Python
Python json格式化打印实现过程解析
2020/07/21 Python
Python调用JavaScript代码的方法
2020/10/27 Python
如何将Pycharm中调整字体大小的方式设置为"ctrl+鼠标滚轮上下滑"
2020/11/17 Python
Django自带的用户验证系统实现
2020/12/18 Python
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
英国和爱尔兰最大的地毯零售商:Kukoon
2018/12/17 全球购物
森林防火标语
2014/06/23 职场文书
护理见习报告范文
2014/11/03 职场文书
帝企鹅日记观后感
2015/06/10 职场文书