使用python进行拆分大文件的方法

(编辑:jimmy 日期: 2024/11/16 浏览:2)

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

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

使用python进行拆分大文件的方法

需要拆分成多个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()
 

结果如下:

使用python进行拆分大文件的方法

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

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

使用python进行拆分大文件的方法

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

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。