使用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 命令行参数sys.argv
Sep 06 Python
Python实现的飞速中文网小说下载脚本
Apr 23 Python
Python中unittest模块做UT(单元测试)使用实例
Jun 12 Python
python生成器表达式和列表解析
Mar 10 Python
python用reduce和map把字符串转为数字的方法
Dec 19 Python
Python实现扩展内置类型的方法分析
Oct 16 Python
python八大排序算法速度实例对比
Dec 06 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
python matplotlib如何给图中的点加标签
Nov 14 Python
解决Tensorflow占用GPU显存问题
Feb 03 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
Aug 17 Python
Python OpenCV之常用滤波器使用详解
Apr 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实现动态执行代码的方法
2016/03/25 PHP
php执行多个存储过程的方法【基于thinkPHP】
2016/11/08 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
php7连接MySQL实现简易查询程序的方法
2020/10/13 PHP
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
javascript页面动态显示时间变化示例代码
2013/12/18 Javascript
js unicode 编码解析关于数据转换为中文的两种方法
2014/04/21 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
基于JavaScript代码实现自动生成表格
2016/06/15 Javascript
基于JS代码实现图片在页面中旋转效果
2016/06/16 Javascript
Bootstrap CSS组件之大屏幕展播
2016/12/17 Javascript
JavaScript利用Date实现简单的倒计时实例
2017/01/12 Javascript
JavaScript实现类似淘宝的购物车效果
2017/03/16 Javascript
Angular2使用Augury来调试Angular2程序
2017/05/21 Javascript
Angularjs 双向绑定时字符串的转换成数字类型的问题
2017/06/12 Javascript
详解vue-cli 脚手架项目-package.json
2017/07/04 Javascript
浅谈node的事件机制
2017/10/09 Javascript
如何抽象一个Vue公共组件
2017/10/17 Javascript
angularjs通过过滤器返回超链接的方法
2018/10/26 Javascript
微信小程序使用wx.request请求服务器json数据并渲染到页面操作示例
2019/03/30 Javascript
使用 webpack 插件自动生成 vue 路由文件的方法
2019/08/20 Javascript
Python写入CSV文件的方法
2015/07/08 Python
pandas 实现将重复表格去重,并重新转换为表格的方法
2018/04/18 Python
Python创建普通菜单示例【基于win32ui模块】
2018/05/09 Python
pandas带有重复索引操作方法
2018/06/08 Python
python对csv文件追加写入列的方法
2019/08/01 Python
Python数据可视化实现正态分布(高斯分布)
2019/08/21 Python
Python 列表中的修改、添加和删除元素的实现
2020/06/11 Python
Python内置方法和属性应用:反射和单例(推荐)
2020/06/19 Python
CSS3实现千变万化的文字阴影text-shadow效果设计
2016/04/26 HTML / CSS
美国维生素、补充剂、保健食品购物网站:Vitacost
2016/08/05 全球购物
2014年接待工作总结
2014/11/26 职场文书
学校食品安全责任书
2015/01/29 职场文书
青春雷锋观后感
2015/06/10 职场文书
springboot如何初始化执行sql语句
2021/06/22 Java/Android
JS创建或填充任意长度数组的小技巧汇总
2021/10/24 Javascript