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 28 Python
Python实现将数据库一键导出为Excel表格的实例
Dec 30 Python
Python基于matplotlib实现绘制三维图形功能示例
Jan 18 Python
python实现字符串中字符分类及个数统计
Sep 28 Python
Python实现获取系统临时目录及临时文件的方法示例
Jun 26 Python
Django使用模板后无法找到静态资源文件问题解决
Jul 19 Python
Django url,从一个页面调到另个页面的方法
Aug 21 Python
使用PyCharm进行远程开发和调试的实现
Nov 04 Python
win10从零安装配置pytorch全过程图文详解
May 08 Python
pycharm设置默认的UTF-8编码模式的方法详解
Jun 01 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
Feb 07 Python
python ConfigParser库的使用及遇到的坑
Feb 12 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/06/25 PHP
PHP生成二维码的两个方法和实例
2014/07/01 PHP
PHP实现的英文名字全拼随机排号脚本
2014/07/04 PHP
php使用Jpgraph绘制饼状图的方法
2015/06/10 PHP
Laravel框架实现发送短信验证功能代码
2016/06/06 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
跟我学习javascript的严格模式
2015/11/16 Javascript
即将发布的jQuery 3 有哪些新特性
2016/04/14 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
JS实现的手机端精简幻灯片效果
2016/09/05 Javascript
js无提示关闭浏览器窗口的两种方法分析
2016/11/06 Javascript
canvas滤镜效果实现代码
2017/02/06 Javascript
JS组件系列之MVVM组件 vue 30分钟搞定前端增删改查
2017/04/28 Javascript
浅谈nodejs中的类定义和继承的套路
2017/07/26 NodeJs
10个在JavaScript开发中常遇到的BUG
2017/12/18 Javascript
微信小程序生成二维码的示例代码
2019/03/29 Javascript
说说如何使用Vuex进行状态管理(小结)
2019/04/14 Javascript
详解小程序设置缓存并且不覆盖原有数据
2019/04/15 Javascript
AutoJs实现刷宝短视频的思路详解
2020/05/22 Javascript
Python文件和流(实例讲解)
2017/09/12 Python
python学习——内置函数、数据结构、标准库的技巧(推荐)
2019/04/18 Python
解决python文件双击运行秒退的问题
2019/06/24 Python
Python循环中else,break和continue的用法实例详解
2019/07/11 Python
在交互式环境中执行Python程序过程详解
2019/07/12 Python
Python3 assert断言实现原理解析
2020/03/02 Python
html5 canvas fillRect坐标和大小的问题解决方法
2014/03/26 HTML / CSS
老板电器官方购物商城:老板油烟机、燃气灶、消毒柜、电烤箱
2018/05/30 全球购物
理工大学毕业生自荐信
2013/11/01 职场文书
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
企业家王石演讲稿:坚持与放下
2014/04/27 职场文书
花坛标语大全
2014/06/30 职场文书
党旗在我心中演讲稿
2014/09/15 职场文书
学校2014重阳节活动策划方案
2014/09/16 职场文书
教师工作证明范本
2015/06/12 职场文书
工作证明格式范文
2015/06/15 职场文书
解决Mysql中的innoDB幻读问题
2022/04/29 MySQL