Good Good study,Day Day up!
python学习之读写文件
上一篇 /
下一篇 2013-08-27 21:25:41
/ 个人分类:python学习
1. 打开文件
语法:open(name[,mode[,buffering]])
eg:f = open(r'c:\test\somefile.txt')
1)文件模式mode
r 读模式
w 写模式
a 追加模式
+ 读/写模式(可添加到其他模式中使用)
b 二进制模式(可添加到其他模式中使用)
2)buffering:控制着文件的缓冲
若为0或False,I/O就是无缓冲的,即所有的读写操作都直接针对硬盘;
若为1或True,I/O就是有缓冲的,意味着python使用内存来代替硬盘,让程序更快,只有使用flush或close时才会更新硬盘上的数据;
若为大于1的数字代表缓冲区的大小,单位是字节;若为-1或任何负数,代表使用默认的缓冲区大小
3)使用open方法打开文件后,记得调用close方法关闭文件:f.close()
51Testing软件测试网G-E
K*wP.Dj-|+z}9C
2. 读取数据
f.read([size]) size为读取的长度,单位为byte;若未指定,则读取所有内容
f.readline([size]) 读取单独的一行;若指定了size,则返回一行的一部分
f.readlines([size]) 读取文件中的所有行,并将其作为列表返回
e
m[8ZgH B:bu0
3. 写数据
f.write(str) 将str写入到文件中,不会加换行符
f.writelines(seq) 将seq中的内容全部写入文件中,多行一次性写入,且写入时程序不会自动增加新行
51Testing软件测试网u])^9G)H
k#rq
4. 对文件内容进行迭代
1)read()方法迭代每个字符
f = open(filename)
for char in f.read():
pass
f.close()
2)readlines()方法迭代行
f = open(filename)
for line in f.readlines():
pass
f.close()
3)fileinput对行进行迭代
import fileinput
for line in fileinput.input(filename):
pass
?j-~3If0
51Testing软件测试网(V
L s!w6^LUy$LUv
收藏
举报
TAG: