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将xml xsl文件生成html文件存储示例讲解
Dec 03 Python
跟老齐学Python之关于循环的小伎俩
Oct 02 Python
Python实现的检测网站挂马程序
Nov 30 Python
Pyinstaller将py打包成exe的实例
Mar 31 Python
Python使用re模块正则提取字符串中括号内的内容示例
Jun 01 Python
详解Python做一个名片管理系统
Mar 14 Python
python3实现微型的web服务器
Sep 03 Python
Python函数中的可变长参数详解
Sep 12 Python
IDLE下Python文件编辑和运行操作
Apr 25 Python
Python Django中间件使用原理及流程分析
Jun 13 Python
如何在keras中添加自己的优化器(如adam等)
Jun 19 Python
matplotlib绘制正余弦曲线图的实现
Feb 22 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
phpmyadmin操作流程
2006/10/09 PHP
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
PHP获取MAC地址的函数代码
2011/09/11 PHP
PHP性能优化准备篇图解PEAR安装
2011/12/05 PHP
PHP运行模式的深入理解
2013/06/03 PHP
php ZipArchive压缩函数详解实例
2013/11/06 PHP
Fedora下安装php Redis扩展笔记
2014/09/03 PHP
php实现等比例压缩图片
2018/07/26 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
PHP7 错误处理机制修改
2021/03/09 PHP
javascript Zifa FormValid 0.1表单验证 代码打包下载
2007/06/08 Javascript
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
起点页面传值js,有空研究学习下
2010/01/25 Javascript
js中如何复制一个对象并获取其所有属性和属性对应的值
2013/10/24 Javascript
jquery中get,post和ajax方法的使用小结
2014/02/04 Javascript
Firefox下无法正常显示年份的解决方法
2014/09/04 Javascript
js仿百度切换皮肤功能(html+css)
2016/07/10 Javascript
JS简单验证上传文件类型的方法
2017/04/17 Javascript
Vue2.5 结合 Element UI 之 Table 和 Pagination 组件实现分页功能
2018/01/26 Javascript
vue实现两个组件之间数据共享和修改操作
2020/11/12 Javascript
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
[41:11]完美世界DOTA2联赛PWL S2 Inki vs Magma 第一场 11.22
2020/11/24 DOTA
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
Python实现扩展内置类型的方法分析
2017/10/16 Python
Python 字符串与数字输出方法
2018/07/16 Python
利用python实现周期财务统计可视化
2019/08/25 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
2019/10/28 Python
pytorch之inception_v3的实现案例
2020/01/06 Python
TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现
2020/02/17 Python
Python使用re模块验证危险字符
2020/05/21 Python
奥地利智能家居和智能生活网上商店:tink.at
2019/10/07 全球购物
企业党员公开承诺书
2014/03/26 职场文书
求职信怎么写范文
2014/05/26 职场文书
2015年银行员工工作总结
2015/04/24 职场文书
反腐倡廉影片观后感
2015/06/08 职场文书