python分批定量读取文件内容,输出到不同文件中的方法

时间:2021-05-22

一、文件内容的分发

应用场景:分批读取共有358086行内容的txt文件,每取1000条输出到一个文件当中

# coding=utf-8# 分批读取共有358086行内容的txt文件,每取1000条输出到一个文件当中txt_path = "E:/torrenthandle.txt"base_path="E:/torrent_distribution/"def distribution( ): f = open(txt_path,"r") lines = f.readlines() f2=open(base_path+"1.txt","w") content="" for i in range( 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-8import osimport shutilsourcepath = "E:\\sample"distribution_path = "E:\\sample\\distribution\\" if __name__ =='__main__': rs = unicode(sourcepath , "utf8") count = 1 savepath = unicode(distribution_path+"1", "utf-8") if not os.path.exists(savepath): os.makedirs(savepath) for rt,dirs,files in os.walk(rs): for fname in files: 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") if not os.path.exists(savepath): os.makedirs(savepath) count+=1

以上这篇python分批定量读取文件内容,输出到不同文件中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章