Python基础-文件操作文件处理流程1.打开文件,获取文件句柄并赋值给一个变量2.通过句柄操作文件3.关闭文件r方式,默认模式下,文件不存在如果文件不存在,则创建,如果文件存在,则在模式下覆盖。是一种特殊的写法b(rb,wb,ab)mode:不需要加encoding:utf-8打开文件的基本操作open(path,flag[,encoding][,errors])path:到的路径openthefileflag:打开文件的方式r以只读方式打开文件,文件描述符放在文件开头rb以只读方式打开二进制格式的文件,文件描述符放在文件开头r+读写方式打开一个文件,文件描述符放在文件开头w只写方式打开一个文件,如果文件已经存在则覆盖,不存在则创建anewfilewb打开一个只用于写入二进制的文件,如果该文件已经存在,则将其覆盖。如果不存在,将创建一个新文件。w+打开文件进行读写。如果该文件已经存在,它将被覆盖。如果不存在,将创建一个新文件。存在,文件描述符会放在文件末尾a+encoding:encodingformaterrors:errorhandlingpath=r"C:\Users\Desktop\file1.txt"#ignore忽略错误f=open(path,"r",encoding="gbk")以以下模式打开文件:r,只读模式【默认模式,文件必须存在,不存在会抛出异常】w,只写模式[不可读;如果不存在,则创建它;如果存在,则清除内容]x,只写模式[不可读;不存在则创建,存在则报错]a、appendmode[readable;如果不存在,则创建它;如果存在,则只追加内容]“+”表示一个文件可以同时读写r+,读写[可读,可写]w+,写读[可读,可写]x+,写读[readable,writable]a+,writeread[readable,writable]"b"表示byte模式操作rborr+bwborw+bxborw+babora+b注:b模式打开时,读取的内容为byte类型,写入时也需要提供字节类型,不能指定编码读取文件内容#1.读取文件文件全部内容str1=f.read()print(str1)#2.读取指定字符数str2=f.read(10)print("*"+str2+"*")str3=f.read(10)print("*"+str3+"*")#3.读取整行,包括“\n”字符str4=f.readline()print(str4)str5=f.readline()print(str5)#4.读取指定字符数str6=f.readline(10)print(str6)#5.读取所有行并返回列表list7=f.readlines()print(list7)#6.如果给定number大于0,返回实际的sizebytes中的行数list8=f.readlines(20)print(list8)#7.修改描述符的位置f.seek(10)str9=f.read()print(str9)关闭文件f.close()#一个完整的过程try:f1=open(path,"r",encoding="gbk")print(f1.read())finally:iff1:f1.close()withopen(path,"r",encoding="gbk")asf2:print(f2.read())写入文件路径=r"C:\Users\Desktop\file4.txt"f=open(path,"w")#1.写入信息进入缓冲区f.write("leeisagoodman")#2.刷新缓冲区#直接将内部缓冲区中的数据立即写入文件,而不是被动等待自动刷新缓冲区写入f.flush()f.write("leeisagoodman\n")f.close()withopen(path,"a")asf:f.write("goodman")withopen('a.txt','w')asf:passwithopen('a.txt','r')asread_f,open('b.txt','w')aswrite_f: data=read_f.read() write_f.write(data)path=r"C:\Users\yanji\Desktop\day7\test1"withopen(path,"wb")asf3:str=“李是个好人”f3.write(str.encode("utf-8"))withopen(path,"rb")asf2:data=f2.read()print(data)print(type(data))newDate=data.decode("utf-8")print(newDate)print(type(newDate))把甜的都喝掉;生活是一首无畏的歌,可以高歌也可以低歌。以上就是全部本次分享的内容,现在想学习编程的朋友们欢迎关注Python技术大本营获取更多技能教程。
