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运行效率的方法之间的对比
Apr 03 Python
python数据结构之图的实现方法
Jul 08 Python
python实现12306火车票查询器
Apr 20 Python
Python Paramiko模块的使用实际案例
Feb 01 Python
Python numpy 提取矩阵的某一行或某一列的实例
Apr 03 Python
Python静态类型检查新工具之pyright 使用指南
Apr 26 Python
python实现截取屏幕保存文件,删除N天前截图的例子
Aug 27 Python
python实现批量处理将图片粘贴到另一张图片上并保存
Dec 12 Python
详解python内置模块urllib
Sep 09 Python
使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)
Oct 12 Python
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
Jun 08 Python
python模块与C和C++动态库相互调用实现过程示例
Nov 02 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
将OICQ数据转成MYSQL数据
2006/10/09 PHP
jQuery EasyUI API 中文文档 - Menu菜单
2011/10/03 Javascript
扩展JavaScript功能的正确方法(译文)
2012/04/12 Javascript
jquery实现的一个文章自定义分段显示功能
2014/05/23 Javascript
AngularJS基础知识
2014/12/21 Javascript
总结JavaScript设计模式编程中的享元模式使用
2016/05/21 Javascript
JavaScript中Number对象的toFixed() 方法详解
2016/09/02 Javascript
vue.js表格分页示例
2016/10/18 Javascript
用JavaScript实现让浏览器停止载入页面的方法
2017/01/19 Javascript
bootstrapValidator.min.js表单验证插件
2017/02/09 Javascript
jQuery插件echarts实现的循环生成图效果示例【附demo源码下载】
2017/03/04 Javascript
详解基于webpack2.x的vue2.x的多页面站点
2017/08/21 Javascript
微信小程序图片选择区域裁剪实现方法
2017/12/02 Javascript
JS数组求和的常用方法实例小结
2019/01/07 Javascript
详解Vue源码中一些util函数
2019/04/24 Javascript
vue内置组件component--通过is属性动态渲染组件操作
2020/07/28 Javascript
简单介绍Python中的JSON使用
2015/04/28 Python
解决python ogr shp字段写入中文乱码的问题
2018/12/31 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
2019/08/08 Python
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
运动鞋中的劳斯莱斯:索康尼(SAUCONY)
2017/08/09 全球购物
介绍一下HDLC(High-Level Data Link Control)高层数据链路协议
2012/01/21 面试题
怎样自定义一个异常类
2016/09/27 面试题
laravel使用redis队列实例讲解
2021/03/23 PHP
党员批评与自我批评
2014/02/12 职场文书
群众路线教育实践活动心得体会
2014/03/07 职场文书
婚前协议书范本
2014/04/15 职场文书
商场促销活动策划方案
2014/08/18 职场文书
2014年办公室个人工作总结
2014/11/12 职场文书
2015年仓库管理员工作总结
2015/04/21 职场文书
2015领导干部廉洁自律工作总结
2015/07/23 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
《王国之心》迎来了发售的20周年, 野村哲发布贺图
2022/04/11 其他游戏
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
2022/05/04 Python
从原生JavaScript到React深入理解
2022/07/23 Javascript
MySQL下载安装配置详细教程 附下载资源
2022/09/23 MySQL