python分批定量读取文件内容,输出到不同文件中的方法
一、文件内容的分发
应用场景:分批读取共有358086行内容的txt文件,每取1000条输出到一个文件当中
#coding=utf-8 #分批读取共有358086行内容的txt文件,每取1000条输出到一个文件当中 txt_path="E:/torrenthandle.txt" base_path="E:/torrent_distribution/" defdistribution(): f=open(txt_path,"r") lines=f.readlines() f2=open(base_path+"1.txt","w") content="" foriinrange(1,len(lines)): if(i%1000!=0): content+=lines[i-1] else: content+=lines[i-1] f2.write(content.strip('\n')) block_path=base_path+str(i)+".txt" f2=open(block_path,"w") content="" #最后的扫尾工作 content+=lines[i] f2.write(content.strip('\n')) f2.close() f.close() distribution()
二、文件夹(目录)下的内容分发
应用场景:分批读取目录下的文件,每取1000条输出到一个新的目录当中
#coding:utf-8 importos importshutil sourcepath="E:\\sample" distribution_path="E:\\sample\\distribution\\" if__name__=='__main__': rs=unicode(sourcepath,"utf8") count=1 savepath=unicode(distribution_path+"1","utf-8") ifnotos.path.exists(savepath): os.makedirs(savepath) forrt,dirs,filesinos.walk(rs): forfnameinfiles: if(count%1000!=0): shutil.copy(rt+os.sep+fname,savepath) #os.remove(rt+os.sep+fname) else: shutil.copy(rt+os.sep+fname,savepath) #os.remove(rt+os.sep+fname) savepath=unicode(distribution_path+str(count),"utf-8") ifnotos.path.exists(savepath): os.makedirs(savepath) count+=1
以上这篇python分批定量读取文件内容,输出到不同文件中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。