Python中文件操作简明介绍


Posted in Python onApril 13, 2015

打开文件

open函数返回一个文件对象,基本语法:

●file_object = open(file_name, access_mode='r'[,buffering=-1])
file_name 是包含要打开的文件名字的字符串, 它可以是相对路径或者绝对路径.
●可选变量access_mode 也是一个字符串, 代表文件打开的模式. 通常, 文件使用模式 ‘r', ‘w', 或是 ‘a'模式来打开, 分别代表读取, 写入和追加.
●另外一个可选参数 buffering 用于指示访问文件所采用的缓冲方式. 其中 0 表示不缓冲, 1表示只缓冲一行数据, 任何其它大于 1 的值代表使用给定值作为缓冲区大小. 不提供该参数或者给定负值代表使用系统默认缓冲机制

文件内建方法

读出

read(size) 方法用来直接读取字节到字符串中, 最多读取给定数目个字节.如果size没有给定,文件将被全部读出.
readline() 方法读取打开文件的一行,和 read() 相同, 它也有一个可选的 size 参数, 默认为 -1, 代表读至行结束符. 如果提供了该参数, 那么在超过 size 个字节后会返回不完整的行.
readlines() 它会读取所有(剩余的)行然后把它们作为一个字符串列表返回.

写入

write()写入字符.
writelines()写入行.这里注意需要显示写入换行符.

文件内移动

seek(offset)移动当前读写位置到指定的offset位置.每次write和read操作后,当前读写位置都会变动.

文件迭代

新方法(更高效)

for eachLine in f

老的方法:
for eachLine in f.readline():

关闭文件

close() 通过关闭文件来结束对它的访问.写入文件后不关闭文件可能会丢失缓冲区数据.

缓冲区数据写入文件

flush() 方法会直接把内部缓冲区中的数据立刻写入文件.

截取文件

truncate() 方法将文件截取到当前文件指针位置或者到给定 size , 以字节为单位.

实例讲解

#!/usr/bin/python

#coding=utf-8
#以写方式打开一个名为welcome.txt文件

f = open("welcome.txt", 'w')
#将数据写入文件

f.writelines("welcome to here\n")

f.writelines("Thank you\n")

f.writelines("exit\n")
#刷新文件

f.flush()
#关闭文件

f.close()
#以读方式打开一个名为welcome.txt文件

f = open("welcome.txt", 'r')

print f.read(8)
#重置读写位置,回到文件最开始位置

f.seek(0)

print f.readline()

输出
welcome 

welcome to here
Python 相关文章推荐
python使用scrapy解析js示例
Jan 23 Python
Python实现将绝对URL替换成相对URL的方法
Jun 28 Python
mysql 之通过配置文件链接数据库
Aug 12 Python
python遍历一个目录,输出所有的文件名的实例
Apr 23 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
Apr 16 Python
python使用opencv对图像mask处理的方法
Jul 05 Python
Python实现二叉搜索树BST的方法示例
Jul 30 Python
Pytorch之保存读取模型实例
Dec 30 Python
python中可以声明变量类型吗
Jun 18 Python
Python调用jar包方法实现过程解析
Aug 11 Python
Python语言编写智力问答小游戏功能
Oct 13 Python
python3字符串输出常见面试题总结
Dec 01 Python
Python单元测试框架unittest简明使用实例
Apr 13 #Python
进一步了解Python中的XML 工具
Apr 13 #Python
Python中的模块和包概念介绍
Apr 13 #Python
Python多线程编程简单介绍
Apr 13 #Python
Python中的面向对象编程详解(下)
Apr 13 #Python
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 #Python
Python中的面向对象编程详解(上)
Apr 13 #Python
You might like
简介PHP的Yii框架中缓存的一些高级用法
2016/03/29 PHP
PHP AjaxForm提交图片上传并显示图片源码
2016/11/29 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
js中将字符串转换成json的三种方式
2011/01/12 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
js创建一个input数组并绑定click事件的方法
2014/06/12 Javascript
AspNet中使用JQuery boxy插件的确认框
2015/05/20 Javascript
Bootstrap嵌入jqGrid,使你的table牛逼起来
2016/05/05 Javascript
React组件的三种写法总结
2017/01/12 Javascript
使用webpack打包koa2 框架app
2018/02/02 Javascript
JavaScript基础心法 数据类型
2018/03/05 Javascript
Vue中的scoped实现原理及穿透方法
2018/05/15 Javascript
vue中$set的使用(结合在实际应用中遇到的坑)
2018/07/10 Javascript
Vue 实现v-for循环的时候更改 class的样式名称
2020/07/17 Javascript
原生js实现滑块区间组件
2021/01/20 Javascript
基于JavaScript实现随机点名器
2021/02/25 Javascript
pygame实现简易飞机大战
2018/09/11 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
2019/03/26 Python
Python中函数的基本定义与调用及内置函数详解
2019/05/13 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
Python openpyxl模块原理及用法解析
2020/01/19 Python
Django-rest-framework中过滤器的定制实例
2020/04/01 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
python中查看.db文件中表格的名字及表格中的字段操作
2020/07/07 Python
Python3如何使用range函数替代xrange函数
2020/10/05 Python
浅析HTML5 meta viewport参数
2020/10/28 HTML / CSS
Berghaus官网:户外服装和设备,防水服
2020/01/17 全球购物
校园活动宣传方案
2014/03/28 职场文书
技术合作协议书范本
2014/04/18 职场文书
镇班子对照检查材料思想汇报
2014/09/24 职场文书
教师政风行风评议心得体会
2014/10/21 职场文书
2014年设备管理工作总结
2014/11/26 职场文书
党建工作汇报材料
2014/12/24 职场文书
中秋节慰问信
2015/02/15 职场文书
优秀教师主要事迹材料
2015/11/04 职场文书
高中生物教学反思
2016/02/20 职场文书