首页 > 编程 > Python > 正文

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

2020-01-04 13:53:34
字体:
来源:转载
供稿:网友

一、文件内容的分发

应用场景:分批读取共有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分批定量读取文件内容,输出到不同文件中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表