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

yipeiwu_com6年前Python基础

一、文件内容的分发

应用场景:分批读取共有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-8

import os
import shutil

sourcepath = "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分批定量读取文件内容,输出到不同文件中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用设计模式中的责任链模式与迭代器模式的示例

Python使用设计模式中的责任链模式与迭代器模式的示例

责任链模式 责任链模式:将能处理请求的对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理请求为止,避免请求的发送者和接收者之间的耦合关系。 #encoding=utf-8...

Python OpenCV处理图像之图像像素点操作

Python OpenCV处理图像之图像像素点操作

本文实例为大家分享了Python OpenCV图像像素点操作的具体代码,供大家参考,具体内容如下 0x01. 像素 有两种直接操作图片像素点的方法: 第一种办法就是将一张图片看成一个多维...

Python基于datetime或time模块分别获取当前时间戳的方法实例

python的时间模块生成时间戳的方法是非常简单的,因为最近频繁用到了时间戳功能,这里简单总结了一下日常使用最为频繁的两个时间模块各自生成当前时间戳的方法,很简单,具体如下: now...

Python多图片合并PDF的方法

Python多图片合并PDF的方法

python多图片合并pdf 起因 一个做美工的朋友需要将多个图片jpg 、png 合并起来,PS操作太慢了所以用了python进行完成这个任务 代码 #!/usr/bin/env...

使用python实现递归版汉诺塔示例(汉诺塔递归算法)

利用python实现的汉诺塔。带有图形演示 复制代码 代码如下:from time import sleep def disp_sym(num, sym):  &nb...