python中读写文件不乱码的方法
这篇文章给大家分享的是有关python中读写文件不乱码的方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。
python中对文件的读和写操作是经常要用到的,下面说一下文件读和写的方法。
读文件 打开文件(文件需要存在)
#打开文件f=open("data.txt","r")#设置文件对象print(f)#文件句柄f.close()#关闭文件#为了方便,避免忘记close掉这个文件对象,可以用下面这种方式替代withopen('data.txt',"r")asf:#设置文件对象str=f.read()#可以是随便对文件的操作
完全读取文件
#完全读取文件f=open("data.txt","r")#设置文件对象string1=f.read()#将txt文件的所有内容读入到字符串string1中f.close()#将文件关闭print(string1)
按按行读取整个文件方法一(删除回车)
#按行读取整个文件方法一(删除回车)data=[]f=open("data.txt","r")#设置文件对象line=f.readline()ifline!='\n'andline[len(line)-1iflen(line)-1>0else0]=="\n":#去掉换行符,也可以不去line_=line[:-1]data.append(line_)whileline:#直到读取完文件line=f.readline()#读取一行文件,包括换行符ifline!=''andline[len(line)-1iflen(line)-1>0else0]=="\n":#去掉换行符,也可以不去line_=line[:-1]data.append(line_)f.close()#关闭文件print(data)
按行读取整个文件方法一(不删除回车)
#按行读取整个文件方法一(不删除回车)data=[]f=open("data.txt","r")#设置文件对象line=f.readline()data.append(line)whileline:#直到读取完文件line=f.readline()#读取一行文件,包括换行符ifline!='':data.append(line)f.close()#关闭文件print(data)
按行读取整个文件第二种方法
#按行读取整个文件第二种方法data=[]forlineinopen("data.txt","r"):#设置文件对象并读取每一行文件data.append(line)#将每一行文件加入到list中print(data)
写文件
列表写入文件
#列表写入文件(直接)data=['a','b','c']#单层列表写入文件withopen("data.txt","w")asf:f.writelines(data)
#列表写入文件(加入一些东西)data=['a','b','c']#单层列表写入文件withopen("data.txt","w")asf:foriindata:f.write(i+'\r\n')
#二维列表写入文件data=[['a','b','c'],['a','b','c'],['a','b','c']]withopen("data.txt","w")asf:#设置文件对象foriindata:i=str(i).strip('[').strip(']').replace(',','').replace('\'','').replace('',',')+'\r\n'#将其中每一个列表规范化成字符串print(i)f.write(i)
#第二种方法,直接将每一项都写入文件data=[['a','b','c'],['a','b','c'],['a','b','c']]withopen("data.txt","w")asf:#设置文件对象foriindata:#对于双层列表中的数据f.writelines(i)
感谢各位的阅读!关于python中读写文件不乱码的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。