5-21文件的操做

一、打开文件spa

文件的三种打开模式,若是open时不指定模式,则默认以读模式打开指针

w,写 可是不能读。注意用该方式打开文件后会先将文件中原来的内容清掉,再写入指定的内容。用该模式要慎重,由于一旦打开文件,内容将被清空开始从新写 对象

w+ ,是写读模式utf-8

只要有w就会清空原来的文件内容字符串

r,读 可是不能写,且文件必须存在it

r+,是读写模式,原理

只要有r,文件就必须存在   coding

a,追加,只能写不能读,且文件必须存在,在文件的末尾添加内容循环

a+,是读写模式,文件不存在打开时不会报错,且打开时不会清空原文件中的内容方法

例如以读模式打开一个当前目录下的文件,并将读到的内容打印出来

二、读取文件的方法 f.read() ,返回的是字符串,读取的是文件的所有内容

f = open('1.txt','r',encoding='utf-8')
print(f.read())
会输出文件的内容

f = open('1.txt','a',encoding='utf-8')
f.write('new new new')
print(f.read())
这样会报错,由于a追加模式只支持写不支持读


二、文件指针的位置
seek()括号中为指定文件指针要移动到哪儿的位置
由于用a+模式打开文件的时候,文件指针自动找到文件的末尾,因此用read()方法就不能读取文件的内容,因此须要指定文件指针的位置,即为开始读文件内容的位置
例如

f = open('1.txt','a+',encoding='utf-8')

f.seek(0)
print(f.read())

三、readlines()也是读取文件的方法,返回的是列表 ,读取的是文件的所有内容
用readlines()时也须要先用seek方法将文件指针定位一下
四、readline()是只读一行文件内容,也须要将文件指针定位一下,每次只读一行

五、写文件的方法wirte(),将括号里的内容写到文件的末尾,括号里是字符串
例如
f.seek(0)
f.write('zhangyizhou')

六、写文件的方法writelines(),将括号里列表的内容写到文件末尾
例如
f.seek(0)
f.writelines(['ase','sfr','yiso'])

七、 文件的循环,文件是个可迭代的对象,直接循环文件对象的话循环的是文件的每一行内容
例如:
count = 0for line in f :    print('第%s行是%s'%(count,line))    count+=1八、文件的修改原理,在作文件修改的操做时,都是建立一个和当前文件同样的文件,从新写一遍文件内容,而后将原来的文件删除九、文件的关闭close()with的方法,不须要写close()了
相关文章
相关标签/搜索