使用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中的defaultdict模块和namedtuple模块的简单入门指南
Apr 01 Python
Python中利用原始套接字进行网络编程的示例
May 04 Python
在Python的Django框架中显示对象子集的方法
Jul 21 Python
Python做简单的字符串匹配详解
Mar 21 Python
Python的argparse库使用详解
Oct 09 Python
对python:threading.Thread类的使用方法详解
Jan 31 Python
Python3.5面向对象程序设计之类的继承和多态详解
Apr 24 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
Apr 29 Python
python tkinter canvas使用实例
Nov 04 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
May 20 Python
Python 处理日期时间的Arrow库使用
Aug 18 Python
关于Python中进度条的六个实用技巧分享
Apr 05 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连接Access数据库错误及解决方法
2013/06/20 PHP
PHP设计模式之观察者模式实例
2016/02/22 PHP
PHP使用redis消息队列发布微博的方法示例
2017/06/22 PHP
javascript模拟的Ping效果代码 (Web Ping)
2011/03/13 Javascript
ajax上传时参数提交不更新等相关问题
2012/12/11 Javascript
jQuery实现的个性化返回底部与返回顶部特效代码
2015/10/30 Javascript
javascript for-in有序遍历json数据并探讨各个浏览器差异
2015/11/30 Javascript
基于JavaScript实现回到页面顶部动画代码
2016/05/24 Javascript
用JavaScript获取页面文档内容的实现代码
2016/06/10 Javascript
js判断出两个字符串最大子串的函数实现方法
2016/11/01 Javascript
JS时间控制实现动态效果的实例讲解
2017/07/31 Javascript
微信小程序下拉刷新界面的实现
2017/09/28 Javascript
基于JavaScript实现表格滚动分页
2017/11/22 Javascript
JavaScript实现获取两个排序数组的中位数算法示例
2019/02/26 Javascript
解决layui数据表格Date日期格式的回显Object的问题
2019/09/19 Javascript
微信小程序(订阅消息)功能
2019/10/25 Javascript
node.js中 mysql 增删改查操作及async,await处理实例分析
2020/02/11 Javascript
微信小程序实现自定义底部导航
2020/11/18 Javascript
Vue解决移动端弹窗滚动穿透问题
2020/12/15 Vue.js
关于python3中setup.py小概念解析
2019/08/22 Python
Python命令行click参数用法解析
2019/12/19 Python
python 实现list或string按指定分段
2019/12/25 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
2020/06/02 Python
python 元组和列表的区别
2020/12/30 Python
Python GUI库Tkiner使用方法代码示例
2020/11/27 Python
社区端午节活动方案
2014/01/28 职场文书
小学安全汇报材料
2014/08/14 职场文书
关于旅游的活动方案
2014/08/15 职场文书
四风问题对照检查整改措施思想报告
2014/10/05 职场文书
公务员政审个人总结
2015/02/12 职场文书
酒店工程部岗位职责
2015/02/12 职场文书
中学生逃课检讨书
2015/02/17 职场文书
小学生手册家长意见
2015/06/03 职场文书
win10安装配置nginx的过程
2021/03/31 Servers
原生Javascript+HTML5一步步实现拖拽排序
2021/06/12 Javascript
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL