文档章节

Python按行分割大文件

程序猿之小菜鸟
 程序猿之小菜鸟
发布于 2016/08/17 10:45
字数 135
阅读 507
收藏 3
import os

def splitfile(filepath,linesize=3000):
    filedir,name = os.path.split(filepath)
    name,ext = os.path.splitext(name)
    filedir = os.path.join(filedir,name)
    if not os.path.exists(filedir):
        os.mkdir(filedir)
         
    partno = 0
    stream = open(filepath,'r', encoding='utf-8')
    while True:
        partfilename = os.path.join(filedir,name + '_' + str(partno) + ext)
        print('write start %s' % partfilename)
        part_stream = open(partfilename,'w', encoding='utf-8')
 
        read_count = 0
        while read_count < linesize:
            read_content = stream.readline()
            if read_content:
                part_stream.write(read_content)
            else:
                break
            read_count += 1
          
        part_stream.close()
        if(read_count < linesize) :
            break
        partno += 1
 
    print('done')
 
 
if __name__ == '__main__':
    splitfile(r'D:\工作资料\统计数据\equipmentinfo\equipmentinfo.sql',6000)

上面代码实现了将一个大文件按照6000行一个文件分割,写入到不同的文件中。

© 著作权归作者所有

共有 人打赏支持
程序猿之小菜鸟
粉丝 5
博文 56
码字总数 8876
作品 0
青岛
程序员
私信 提问
Python Coding Rule

介绍 这篇文档所给出的编码约定适用于在主要的Python发布版本中组成标准库的Python 代码.请查阅相关的关于在Python的C实现中C代码风格指南的描述. 这篇文档改编自Guido最初的《Python风格指南...

索隆
2012/04/24
0
0
1. 文本处理加速(利用多核优势进行文本的并列处理)

人生苦短,我用Python!然后学学使用Shell。 任务要求 在写爬虫或是做文本数据清洗的时候,有的时候发现我们用python写的处理程序会遇到速度过慢的问题,造成这个的原因可能如下: Python 自...

北静王
08/13
0
0
Pandas.DataFrame的使用

导入文件 这三行代码就可以实现csv文件的导入,注意文件的路径 删除行 这句代码的意思是删除文件中的第16和17行,并且,后面第18和19并不会自动补到16和17的位置上去,行号从15以后就直接跳到...

香橙云子
10/30
0
0
Python Split函数的用法总结(持续更新中。。。)

字符串的split用法 说明: Python中没有字符类型的说法,只有字符串,这里所说的字符就是只包含一个字符的字符串!!! 这里这样写的原因只是为了方便理解,仅此而已。 由于敢接触Python,所...

赵西元
2013/07/23
0
3
将字符串转化成ZigZag模式

背景: 原问题出处:https://leetcode.com/problems/zigzag-conversion/ 就是将一个字符串按ZigZag格式进行转换,并返回。例如字符串"ABCDEFGHIJK" 转换后(3行): A E IBDFHJC G K 然后按行...

指尖跳动的精灵
2015/04/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

spark安装测试

spark安装测试 由于本地已经安装好hadoop相关组件,所以本文是在yarn的基础上对spark进行安装及测试 确保hdfs及yarn成功启动,hadoop版本为2.7.3 安装scala,由于本人安装的spark是2.4.0,对应...

-九天-
20分钟前
2
0
周末看完了《电能计量自动化技术》

整体质量还行,下面分别将心得记录如下: 第一章:发展历程可以看看,现在算是智能电网阶段 2:讲主站系统。以文件进行各模块的交互很值得思考,尤其是批量数据,多团队合作的情况下。另外线...

max佩恩
40分钟前
7
0
mybatis批量update操作的写法,及批量update报错的问题解决方法

mybatis的批量update操作写法很简单,如下: 如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿...

编程SHA
今天
16
0
EOS怎样删除钱包

在使用Eos的keosd钱包软件时,如果要删除EOS中指定名称的钱包,最简单的办法是 直接删除钱包文件,不过在删除钱包之前,需要先停止钱包软件的运行。 学习EOS应用开发要选这个:【EOS智能合约...

汇智网教程
今天
11
0
Java语言快速实现简单MQ消息队列服务

使用 JAVA 语言自己动手来写一个MQ (类似ActiveMQ,RabbitMQ) 主要角色 首先我们必须需要搞明白 MQ (消息队列) 中的三个基本角色 ProducerBrokerConsumer 整体架构如下所示 自定义协议 首...

微笑向暖wx
今天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部