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


Posted in Python onDecember 10, 2018

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进行拆分大文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Django1.3添加app提示模块不存在的解决方法
Aug 26 Python
python中二维阵列的变换实例
Oct 09 Python
Python简单操作sqlite3的方法示例
Mar 22 Python
python中利用Future对象异步返回结果示例代码
Sep 07 Python
python 执行shell命令并将结果保存的实例
May 11 Python
python基础学习之如何对元组各个元素进行命名详解
Jul 12 Python
Python3的介绍、安装和命令行的认识(推荐)
Oct 20 Python
解决Django Static内容不能加载显示的问题
Jul 28 Python
tensorflow如何批量读取图片
Aug 29 Python
pandas dataframe 中的explode函数用法详解
May 18 Python
深入理解Python 多线程
Jun 16 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
python使用udp实现聊天器功能
Dec 10 #Python
Python面向对象之类和对象实例详解
Dec 10 #Python
详解Django-auth-ldap 配置方法
Dec 10 #Python
Python网页正文转换语音文件的操作方法
Dec 09 #Python
python 使用 requests 模块发送http请求 的方法
Dec 09 #Python
Python实现八皇后问题示例代码
Dec 09 #Python
python中的tcp示例详解
Dec 09 #Python
You might like
php数组的概述及分类与声明代码演示
2013/02/26 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
Zend Framework入门之环境配置及第一个Hello World示例(附demo源码下载)
2016/03/21 PHP
PHP超低内存遍历目录文件和读取超大文件的方法
2019/05/01 PHP
javascript 文章截取部分无损html显示实现代码
2010/05/04 Javascript
js操作textarea 常用方法总结
2012/12/03 Javascript
手机端网页点击链接触发自动拨打或保存电话的示例代码
2014/08/15 Javascript
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
jquery实现点击页面计算点击次数
2015/01/23 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
EasyUi combotree 实现动态加载树节点
2016/04/01 Javascript
温习Javascript基础语法之词法结构
2016/05/31 Javascript
AngularJS基础 ng-focus 指令简单示例
2016/08/01 Javascript
AngularJS 单元测试(二)详解
2016/09/21 Javascript
canvas时钟效果
2017/02/16 Javascript
javascript编写简易计算器
2017/05/06 Javascript
深入理解Angular4中的依赖注入
2017/06/07 Javascript
jQuery结合jQuery.cookie.js插件实现换肤功能示例
2017/10/14 jQuery
jQuery实现的页面详情展开收起功能示例
2018/06/11 jQuery
vue组件之间通信方式实例总结【8种方式】
2019/02/22 Javascript
实例详解vue中的$root和$parent
2019/04/29 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
[32:26]EG vs IG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python高并发异步服务器核心库forkcore使用方法
2013/11/26 Python
Python列表list数组array用法实例解析
2014/10/28 Python
Tensorflow简单验证码识别应用
2017/05/25 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
Pytorch to(device)用法
2020/01/08 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
早晨薰衣草在线女性精品店:Morning Lavender
2021/01/04 全球购物
优秀管理者事迹材料
2014/05/22 职场文书
2014年教师政治学习材料
2014/06/02 职场文书
商铺租房协议书范本
2014/12/04 职场文书
自书遗嘱范文
2015/08/07 职场文书
JavaScript实现酷炫的鼠标拖尾特效
2022/02/18 Javascript
python自动化测试之Selenium详解
2022/03/13 Python