python文件操作之文件打开方式

1.文件的打开方式

open(name[,mode[buf]])
name:文件的路径
mode:文件的打开方式,如w、r、wr、rw等
buf:缓存区大小

mode详解:

mode说明备注
r只读方式打开文件必须存在
w只写方式打开文件不存在则创建文件
文件存在则先清空文件
a追加方式打开(即一打开文件,文件指针自动移到文件末尾)文件不存在则创建文件
r+以读写方式打开文件,可对文件进行读和写操作。文件指针在文件头 
w+消除文件内容,然后以读写方式打开文件。 
a+以读写方式打开文件,并把文件指针移到文件尾。 






注:rb,wb,ab,ab+,wb+,rb+ab+,以二进制打开文件,如打开图片等

2.文件读取方式

read([size]):读取文件(读取size个字节,默认读取全部)
readline([size]):读取一行
readlines([size]):读取文件至内存(并非整个文件,而是DEFAULT_BUFFER_SIZE大小进缓存,再返回其每一行组成的列表
readline s示例:
#-*-coding:utf-8-*-
fr = open('c:\\readline.txt')
    for  line in  fh.readlines(): 
        print  line
readline示例

#-*-coding:utf-8-*-
f = open('readline.txt','r')  
for line in open('readline.txt'):  
    line = f.readline()  
    print line


3.文件写入方式

write(str):直接将字符串写入文件
write(sequence_of_strings):将多行写到文件
4.简单示例

#-*-coding:utf-8-*-
#文件名:hello.txt,内容:hello world!
#0x00 r方式
fo = open("hello.txt")#默认以只读方式打开
fr = fo.read()
fo.wirte("write hello!") #此时报错,因为fo以只读方式打开

#0x01 w方式
fo = open("hello.txt","w") #写文件,无则创建,有则清空
fo.write("hello by write") #此时原字符串被置换为hello by write
fo.close()

#0x02 追加方式a
fo = open("hello.txt","a") #写文件,无则创建
fo.write("hello by a") #文件原内容保留,新加行hello by a
fo.close()

#0x03 读写方式r+
fo = open("hello.txt","r+") #读写方式r+
fo.write("hi r+") #此时的文件内容改为:hi r+ world!,覆盖了原来hello的位置
fo.close()

#0x04 读写方式w+
fo = open("hello.txt","w+") #读写方式w+
fo.read() #此时的文件为空
fo.close()

总结,除了要了解以上文件的基本操作方式,还应当了解文件的其他操作方法。下面我们再来了解下如何打开创建一个utf-8或者其他编码格式的文件呢?

5.codecs

codecs模块提供方法创建指定编码格式文件

open(fname,mode,encoding,errors,buffering)

#-*-coding:utf-8-*-
import codecs
f = codecs.open('codecs.txt','w','utf-8') #默认的mode为rb
f.write(u'博客')
f.close()
关于codecs更多的说明,请参考其他教学资料。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值