使用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实现的ini文件操作类分享
Nov 20 Python
python同时给两个收件人发送邮件的方法
Apr 30 Python
Python开发的实用计算器完整实例
May 10 Python
Python中序列的修改、散列与切片详解
Aug 27 Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 Python
python实现时间o(1)的最小栈的实例代码
Jul 23 Python
Django csrf 两种方法设置form的实例
Feb 03 Python
Python要求O(n)复杂度求无序列表中第K的大元素实例
Apr 02 Python
Pycharm2020.1安装中文语言插件的详细教程(不需要汉化)
Aug 07 Python
Python使用xpath实现图片爬取
Sep 16 Python
selenium学习教程之定位以及切换frame(iframe)
Jan 04 Python
python中出现invalid syntax报错的几种原因分析
Feb 12 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 面试碰到过的问题 在此做下记录
2011/06/09 PHP
PHP中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
php通过baihui网API实现读取word文档并展示
2015/06/22 PHP
php实现图片按比例截取的方法
2017/02/06 PHP
encode脚本和normal脚本混用的问题与解决方法
2007/03/08 Javascript
基于JavaScript 下namespace 功能的简单分析
2013/07/05 Javascript
iframe实用操作锦集
2014/04/22 Javascript
JS+CSS实现的拖动分页效果实例
2015/05/11 Javascript
jQuery移动web开发之页面跳转和加载外部页面的实现
2015/12/04 Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
2015/12/16 Javascript
jQuery form插件的使用之处理server返回的JSON, XML,HTML数据
2016/01/26 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
Bootstrap table分页问题汇总
2016/05/30 Javascript
实例解析jQuery中如何取消后续执行内容
2016/12/01 Javascript
livereload工具实现前端可视化开发【推荐】
2016/12/23 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
vue 路由懒加载中给 Webpack Chunks 命名的方法
2020/04/24 Javascript
实例分析javascript中的异步
2020/06/02 Javascript
[01:05:56]Liquid vs VP Supermajor决赛 BO 第二场 6.10
2018/07/04 DOTA
Python Web程序部署到Ubuntu服务器上的方法
2018/02/22 Python
Python3.6+selenium2.53.6自动化测试_读取excel文件的方法
2019/09/06 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
python3代码中实现加法重载的实例
2020/12/03 Python
CSS3 创建网页动画实现弹跳球动效果
2018/10/30 HTML / CSS
详解HTML5中的Communication API基本使用方法
2016/01/29 HTML / CSS
英国最大的专业户外零售商:Mountain Warehouse
2018/06/06 全球购物
恒华伟业笔试面试题
2015/02/26 面试题
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
2014/04/23 面试题
家长对小学生的评语
2014/01/28 职场文书
中班中秋节活动反思
2014/02/18 职场文书
访谈节目策划方案
2014/05/15 职场文书
《为人民服务》教学反思
2016/02/20 职场文书
mysq启动失败问题及场景分析
2021/07/15 MySQL
MySQL对数据表已有表进行分区表的实现
2021/11/01 MySQL
Apache自带的ab压力测试工具的实现
2022/07/23 Servers