python文件读写

来源:互联网 发布:大连理工网络教育官网 编辑:程序博客网 时间:2024/05/25 18:09

1.简单的读文件

fd=open('test.txt')
lines = fd.read()

print lines
fd.close()

打开为只读

fd=open('test.txt','r')

其实等价于fd=open('test.txt')
第二个参数默认为r.

读二进制文件

fd=open('test.txt','rb')

追加写

fd=open('test.txt','w+')

总结:

r只读,r+读写,w会覆盖原有文件,a追加

b二进制文件 常用rb wb r+b

2.写

fd.write('laurawan')

fd.writelines(list_of_text_strings)

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

3.读

读取的是所有内容

lines = fd.read()

读固定字节

fd.read(100)

读行

fd.readlines()

读取的是所有内容

fd.readlines(siehint)

e.g.

fd=open('test.txt')
sizehint = 500
position = 0
lines = fd.readlines(sizehint)
while fd.tell()-position>0:
    position=fd.tell()
    lines = fd.readlines(sizehint)  
fd.close()

4.其他

fd.flush()

#把缓冲区的内容写入硬盘

fd.fileno()

#返回一个长整型的文件标签

fd.next()

#返回下一行

fd.seek(offset[,whence])

#将文件操作标记移到offset位置。

#默认为从文件的开头开始计算

#whence 0表示从头开始计算 默认

1表示从当前位置为原点开始计算

2表示以文件尾为原点开始计算

如果文件以a或a+的模式打开,每次进行写操作,文件操作标记都会自动返回到文件尾。

fd.truncate([size])

#把文件截成规定的大小,默认的是截到文件操作标记的当前位置。

如果size比文件的大小还要大,依据系统的不同可能是不改变文件,也可能是用0把文件填充到相应的大小,也可能是以随机的内容加上去。

原创粉丝点击