今天小编就为大家分享一篇使用python进行拆分大文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

python按指定行数把大文件进行拆分

如图大文件有7000多万行,大小为16G

需要拆分成多个200万行的小文件

代码如下:

# -*- coding:utf-8 -*-
from datetime import datetime
 
def Main():
 source_dir = '/data/u_lx_data/zhangqm/sh/yanjie/liuxuesheng/jz_yuanshi_list0206.txt'
 target_dir = '/data/u_lx_data/zhangqm/sh/yanjie/liuxuesheng/split/'
 
 # 计数器
 flag = 0
 
 # 文件名
 name = 1
 
 # 存放数据
 dataList = []
 
 print("开始。。。。。")
 print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
 
 with open(source_dir,'r') as f_source:
  for line in f_source:
   flag+=1
   dataList.append(line)
   if flag == 2000000:
    with open(target_dir+"jz_yuanshi_list_"+str(name)+".txt",'w+') as f_target:
     for data in dataList:
      f_target.write(data)
    name+=1
    flag = 0
    dataList = []
    
 # 处理最后一批行数少于200万行的
 with open(target_dir+"jz_yuanshi_list_"+str(name)+".txt",'w+') as f_target:
  for data in dataList:
   f_target.write(data)
 
 print("完成。。。。。")
 print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
 
if __name__ == "__main__":
 Main()
 

结果如下:

生39个文件,最后一个文件行数760821,这样就OK啦

经测试16G文件所需时间如图:不到两分钟

以上这篇使用python进行拆分大文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持爱安网。

最新资讯
新能源车续航可达1000公里,颠覆还是泡沫?

新能源车续航可达1000

一直以来,续航里程焦虑都是新能源车市场的大敌。
别了,锤子手机

别了,锤子手机

  欢迎关注“创事记”的微信订阅号:sinachuangshiji
滴滴:北京超10万名司机完成疫苗接种

滴滴:北京超10万名司机

在防疫部门和交通主管部门的指导和帮助下,在市、区两级
华为智能汽车蔡建永:当前智能汽车更像手机时代的山寨机

华为智能汽车蔡建永:当

华为智能汽车解决方案BU CTO蔡建永表示,当前市面上很多
逐鹿“飞行汽车”,通用、小鹏、吉利为何都来了?

逐鹿“飞行汽车”,通用

从这个角度来看,飞行汽车存在成本高企、应用场景有待开
美团互助关停,网络互助行业走到分水岭

美团互助关停,网络互助

这次关停可以理解为是整个网络互助行业的一个分水岭。
最新文章
在pycharm中为项目导入anacodna环境的操作方法

在pycharm中为项目导

这篇文章主要介绍了在pycharm中为项目导入anacodna环
tensorflow的ckpt及pb模型持久化方式及转化详解

tensorflow的ckpt及pb

今天小编就为大家分享一篇tensorflow的ckpt及pb模型持
PyTorch笔记之scatter()函数的使用

PyTorch笔记之scatter

这篇文章主要介绍了PyTorch笔记之scatter()函数的使用
python3实现网页版raspberry pi(树莓派)小车控制

python3实现网页版ras

这篇文章主要为大家详细介绍了python3实现网页版raspb
完美解决pycharm导入自己写的py文件爆红问题

完美解决pycharm导入

今天小编就为大家分享一篇完美解决pycharm导入自己写
pycharm内无法import已安装的模块问题解决

pycharm内无法import

今天小编就为大家分享一篇pycharm内无法import已安装