Python open读写文件实现脚本


Posted in Python onSeptember 06, 2008

1.open

使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。

file_object = open('thefile.txt')
try:
  all_the_text = file_object.read( )
finally:
  file_object.close( )

注:不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。

2.读文件

读文本文件

input = open('data', 'r')
#第二个参数默认为r
input = open('data')

读二进制文件

input = open('data', 'rb')

读取所有内容

file_object = open('thefile.txt')
try:
  all_the_text = file_object.read( )
finally:
  file_object.close( )

读固定字节

file_object = open('abinfile', 'rb')
try:
  while True:
    chunk = file_object.read(100)
    if not chunk:
      break
    do_something_with(chunk)
finally:
  file_object.close( )

读每行

list_of_all_the_lines = file_object.readlines( )

如果文件是文本文件,还可以直接遍历文件对象获取每行:

for line in file_object:
    process line

3.写文件

写文本文件
output = open('data', 'w')

写二进制文件
output = open('data', 'wb')

追加写文件
output = open('data', 'w+')

写数据

file_object = open('thefile.txt', 'w')
file_object.write(all_the_text)
file_object.close( )

写入多行
file_object.writelines(list_of_text_strings)

注意,调用writelines写入多行在性能上会比使用write一次性写入要高。

Python 相关文章推荐
Python自动化测试工具Splinter简介和使用实例
May 13 Python
JSON Web Tokens的实现原理
Apr 02 Python
Python中用post、get方式提交数据的方法示例
Sep 22 Python
python MySQLdb使用教程详解
Mar 20 Python
django之对FileField字段的upload_to的设定方法
Jul 28 Python
解决Python二维数组赋值问题
Nov 28 Python
如何使用Python破解ZIP或RAR压缩文件密码
Jan 09 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
Mar 10 Python
Python连接Impala实现步骤解析
Aug 04 Python
Python如何获取文件路径/目录
Sep 22 Python
python 统计代码耗时的几种方法分享
Apr 02 Python
简单谈谈Python面向对象的相关知识
Jun 28 Python
Python 过滤字符串的技巧,map与itertools.imap
Sep 06 #Python
比较详细Python正则表达式操作指南(re使用)
Sep 06 #Python
Python splitlines使用技巧
Sep 06 #Python
Python struct.unpack
Sep 06 #Python
Python 条件判断的缩写方法
Sep 06 #Python
Python 可爱的大小写
Sep 06 #Python
Python 除法小技巧
Sep 06 #Python
You might like
php缓存技术详细总结
2013/08/07 PHP
php中使用array_filter()函数过滤空数组的实现代码
2014/08/19 PHP
php 使用redis锁限制并发访问类示例
2016/11/02 PHP
禁止F5等快捷键的JS代码
2007/03/06 Javascript
发布一个高效的JavaScript分析、压缩工具 JavaScript Analyser
2007/11/30 Javascript
Mootools 1.2教程 Fx.Tween的使用
2009/09/15 Javascript
Jquery Autocomplete 结合asp.net使用要点
2010/10/29 Javascript
jquery+ajax+C#实现无刷新操作数据库数据的简单实例
2014/02/08 Javascript
JavaScript对表格或元素按文本,数字或日期排序的方法
2015/05/26 Javascript
微信小程序 PHP生成带参数二维码
2017/02/21 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
JavaScript中offsetWidth的bug及解决方法
2017/05/17 Javascript
zTree树形插件异步加载方法详解
2017/06/14 Javascript
基于vue组件实现猜数字游戏
2020/05/28 Javascript
Vue中v-show添加表达式的问题(判断是否显示)
2018/03/26 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
微信小程序如何获取地址
2019/12/24 Javascript
[56:35]DOTA2上海特级锦标赛C组小组赛#1 OG VS Archon第二局
2016/02/27 DOTA
Python二分法搜索算法实例分析
2015/05/11 Python
python2.7和NLTK安装详细教程
2018/09/19 Python
Python修改文件往指定行插入内容的实例
2019/01/30 Python
Python Web静态服务器非堵塞模式实现方法示例
2019/11/21 Python
Python实现图像去噪方式(中值去噪和均值去噪)
2019/12/18 Python
selenium中get_cookies()和add_cookie()的用法详解
2020/01/06 Python
详解Python中的分支和循环结构
2020/02/11 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
统计每一学生的平均成绩
2014/06/06 面试题
浙大毕业生自荐信
2014/01/26 职场文书
党员民主评议个人总结
2014/10/20 职场文书
思想道德自我评价2015
2015/03/09 职场文书
2015年行政管理人员工作总结
2015/10/15 职场文书
导游词之香港-太平山顶
2019/10/18 职场文书
一篇文章弄懂Python关键字、标识符和变量
2021/07/15 Python
利用JavaScript写一个简单计算器
2021/11/27 Javascript
详解Android中的TimePickerView(时间选择器)的用法
2022/04/30 Java/Android