一、文件內容的分發
應用場景:分批讀取共有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分批定量讀取文件內容,輸出到不同文件中的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。
新聞熱點
疑難解答