使用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下载文件时显示下载进度的方法
Apr 02 Python
图文讲解选择排序算法的原理及在Python中的实现
May 04 Python
python安装mysql-python简明笔记(ubuntu环境)
Jun 25 Python
Python的collections模块中的OrderedDict有序字典
Jul 07 Python
Python实现的NN神经网络算法完整示例
Jun 19 Python
Django框架实现逆向解析url的方法
Jul 04 Python
Python爬取爱奇艺电影信息代码实例
Nov 26 Python
40个你可能不知道的Python技巧附代码
Jan 29 Python
Python依赖包迁移到断网环境操作
Jul 13 Python
python 中的命名空间,你真的了解吗?
Aug 19 Python
Python模拟登录和登录跳转的参考示例
Oct 30 Python
用ldap作为django后端用户登录验证的实现
Dec 07 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 一个随机字符串生成代码
2010/05/26 PHP
PHP的switch判断语句的“高级”用法详解
2014/10/01 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
PHP实现的函数重载功能示例
2018/08/03 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
jquery移除button的inline onclick事件(已测试及兼容浏览器)
2013/01/25 Javascript
仿谷歌主页js动画效果实现代码
2013/07/14 Javascript
jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
2016/06/02 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
Bootstrap select多选下拉框实现代码
2016/12/23 Javascript
JS中Select下拉列表类(支持输入模糊查询)功能
2017/01/17 Javascript
浅析javaScript中的浅拷贝和深拷贝
2017/02/15 Javascript
bootstrap实现的自适应页面简单应用示例
2017/03/09 Javascript
Vue框架之goods组件开发详解
2018/01/25 Javascript
layui表格 列自动适应大小失效的解决方法
2019/09/06 Javascript
小程序的上传文件接口的注意要点解析
2019/09/17 Javascript
vue中的使用token的方法示例
2020/03/10 Javascript
JavaScript 空间坐标的使用
2020/08/19 Javascript
vue 虚拟DOM的原理
2020/10/03 Javascript
Vue多选列表组件深入详解
2021/03/02 Vue.js
python获得图片base64编码示例
2014/01/16 Python
在Python中操作列表之List.append()方法的使用
2015/05/20 Python
Python多线程爬虫简单示例
2016/03/04 Python
django 信号调度机制详解
2019/07/19 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
2019/11/19 Python
基于torch.where和布尔索引的速度比较
2020/01/02 Python
Python实现括号匹配方法详解
2020/02/10 Python
基于python实现微信好友数据分析(简单)
2020/02/16 Python
Python Pandas数据分析工具用法实例
2020/11/05 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
10分钟理解CSS3 Grid布局
2018/12/20 HTML / CSS
全球工业:Global Industrial
2020/02/01 全球购物
中职生自荐信范文
2014/06/15 职场文书
javascript实现计算器功能详解流程
2021/11/01 Javascript
python保存图片的四个常用方法
2022/02/28 Python
html中相对位置与绝对位置的具体使用
2022/05/15 HTML / CSS