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操作Elasticsearch数据索引的教程
Apr 08 Python
将Python的Django框架与认证系统整合的方法
Jul 24 Python
python 查找字符串是否存在实例详解
Jan 20 Python
浅谈django开发者模式中的autoreload是如何实现的
Aug 18 Python
python3安装speech语音模块的方法
Dec 24 Python
pyqt5实现俄罗斯方块游戏
Jan 11 Python
Python去除字符串前后空格的几种方法
Mar 04 Python
keras小技巧——获取某一个网络层的输出方式
May 23 Python
QT5 Designer 打不开的问题及解决方法
Aug 20 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
Oct 29 Python
Prometheus开发中间件Exporter过程详解
Nov 30 Python
python for循环赋值问题
Jun 03 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+mysql一个名片库程序
2006/10/09 PHP
PHP 第二节 数据类型之数组
2012/04/28 PHP
深入探究PHP的多进程编程方法
2015/08/18 PHP
PHP小偷程序的设计与实现方法详解
2016/10/15 PHP
为jQuery.Treeview添加右键菜单的实现代码
2010/10/22 Javascript
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
js与jquery获取父元素,删除子元素的两种不同方法
2014/01/09 Javascript
JavaScript中九种常用排序算法
2014/09/02 Javascript
教你如何使用node.js制作代理服务器
2014/11/26 Javascript
js实现模拟计算器退格键删除文字效果的方法
2015/05/07 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
BootStrap创建响应式导航条实例代码
2016/05/31 Javascript
javascript数组去重常用方法实例分析
2017/04/11 Javascript
详解vue2.0+vue-video-player实现hls播放全过程
2018/03/02 Javascript
快速解决vue在ios端下点击响应延时的问题
2018/08/27 Javascript
jQuery实现购物车的总价计算和总价传值功能
2018/11/28 jQuery
vue中的mvvm模式讲解
2019/01/31 Javascript
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
JS实现随机抽选获奖者
2019/11/07 Javascript
javascript将16进制的字符串转换为10进制整数hex
2020/03/05 Javascript
JavaScript JSON使用原理及注意事项
2020/07/30 Javascript
nuxt 页面路由配置,主页轮播组件开发操作
2020/11/05 Javascript
在Python中封装GObject模块进行图形化程序编程的教程
2015/04/14 Python
详解python实现读取邮件数据并下载附件的实例
2017/08/03 Python
python面向对象实现名片管理系统文件版
2019/04/26 Python
python实现126邮箱发送邮件
2020/05/20 Python
有关pycharm登录github时有的时候会报错connection reset的问题
2020/09/15 Python
详解Anaconda安装tensorflow报错问题解决方法
2020/11/01 Python
常用的HTML5列表标签
2017/06/20 HTML / CSS
英国综合网上购物商城:The Hut
2018/07/03 全球购物
个人自我鉴定怎么写
2013/10/28 职场文书
庆六一活动总结
2014/08/29 职场文书
诉讼代理人授权委托书
2014/10/11 职场文书
2016年社区服务活动总结
2016/04/06 职场文书
Python入门学习之类的相关知识总结
2021/05/25 Python
Python图片检索之以图搜图
2021/05/31 Python