使用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 相关文章推荐
python采用requests库模拟登录和抓取数据的简单示例
Jul 05 Python
Python程序中使用SQLAlchemy时出现乱码的解决方案
Apr 24 Python
在Python中使用matplotlib模块绘制数据图的示例
May 04 Python
python中的错误处理
Apr 10 Python
python 全文检索引擎详解
Apr 25 Python
PyQt5 QSerialPort子线程操作的实现
Apr 21 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 Python
在python中利用numpy求解多项式以及多项式拟合的方法
Jul 03 Python
Python 判断时间是否在时间区间内的实例
May 16 Python
Python基于数列实现购物车程序过程详解
Jun 09 Python
通过cmd进入python的步骤
Jun 16 Python
Django配置Bootstrap, js实现过程详解
Oct 13 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后台的Android新闻浏览客户端
2016/05/23 PHP
Yii框架连接mongodb数据库的代码
2016/07/27 PHP
PHP入门教程之图像处理技巧分析
2016/09/11 PHP
PHP数据的提交与过滤基本操作实例详解
2016/11/11 PHP
优化javascript的执行速度
2010/01/23 Javascript
jQuery Form 页面表单提交的小例子
2013/11/15 Javascript
jquery实现树形二级菜单实例代码
2013/11/20 Javascript
详解JavaScript基本类型和引用类型
2015/12/09 Javascript
node.js入门实例helloworld详解
2015/12/23 Javascript
JavaScript的Backbone.js框架入门学习指引
2016/05/07 Javascript
深入学习Bootstrap表单
2016/12/13 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
2017/01/14 Javascript
bootstrap weebox 支持ajax的模态弹出框
2017/02/23 Javascript
AngularJS表单验证功能分析
2017/05/26 Javascript
jQuery+vue.js实现的九宫格拼图游戏完整实例【附源码下载】
2017/09/12 jQuery
基于Vue实现图书管理功能
2017/10/17 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
webpack 开发和生产并行设置的方法
2018/11/08 Javascript
vue中uni-app 实现小程序登录注册功能
2019/10/12 Javascript
vue项目引入ts步骤(小结)
2019/10/31 Javascript
jQuery实现移动端笔触canvas电子签名
2020/05/21 jQuery
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
[01:00:25]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS Liquid
2018/03/31 DOTA
[03:11]不朽宝藏三外观展示
2020/09/18 DOTA
在Python中使用lambda高效操作列表的教程
2015/04/24 Python
Python DataFrame设置/更改列表字段/元素类型的方法
2018/06/09 Python
TensorFlow2.0:张量的合并与分割实例
2020/01/19 Python
如何配置关联Python 解释器 Anaconda的教程(图解)
2020/04/30 Python
Python+pyftpdlib实现局域网文件互传
2020/08/24 Python
python 贪心算法的实现
2020/09/18 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
2021/01/05 Python
值得收藏的HTML5资源(学习html5的朋友可以收藏下)
2010/07/20 HTML / CSS
致200米运动员广播稿
2014/02/06 职场文书
申请任职学生会干部自荐书范文
2014/02/13 职场文书
仓库规划计划书
2014/04/28 职场文书
MyBatis核心源码深度剖析SQL语句执行过程
2022/05/20 Java/Android