基于python实现对文件进行切分行


Posted in Python onApril 26, 2020

针对配置文件进行切分,重组,每隔30行为一段,进行重新生成功能。

代码如下

#!/usr/local/python/bin/python
# coding=utf-8
import sys
import re
import os
f = open('config.conf','r')
#判断文件条数
def file_num(filename):
  num_col = 0
  with open(filename,'rb') as Fnum:
    while(Fnum.readline() !=''):
     num_col = num_col + 1
  return num_col
  

file_num = file_num('config.conf')
print '文件总条数:' + str(file_num)

i = 0 #设置计数器
while i < file_num :       #表示文件行数
  with open('/tmp/newfile/newfile'+str(i),'w') as f1:
    for j in range(0,30) : #这里设置每个子文件的大小
      if i <= file_num : #这里判断是否已结束,否则最后可能报错
        f1.writelines(f.readline())
        i = i+1
      else:
        break

filepath1='/tmp/newfile/'
def eachFile(filepath):
  num = 1
  pathDir = sorted(os.listdir(filepath))
  for allDir in pathDir:
    child = os.path.join('%s%s' % (filepath, allDir))
    file_name = child.decode('gbk')
    print file_name
    with open('/tmp/check.py','a+') as f2:
     fopen = open(file_name, 'r+')
     f2.writelines("# config.py sql" + str(num) + " begin\n")
     count=0
     for line in fopen.readlines(): 
       if count == 0:
        f2.writelines(line)
        count= count+1
       else:
        f2.writelines("UNION ALL " + line)
     f2.writelines("# config.py sql" + str(num) + " end\n")
     f2.writelines("\n")
     num = num + 1

eachFile(filepath1)

脚本说明:

目录路径:/tmp

配置文件:config.conf

准备目录:/tmp/newfile/

最终新的配置文件为:check.py

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中List的sort方法指南
Sep 01 Python
Python使用pymysql小技巧
Jun 04 Python
Pandas读取MySQL数据到DataFrame的方法
Jul 25 Python
在Python中增加和插入元素的示例
Nov 01 Python
python执行CMD指令,并获取返回的方法
Dec 19 Python
python使用threading.Condition交替打印两个字符
May 07 Python
检测python爬虫时是否代理ip伪装成功的方法
Jul 12 Python
django Admin文档生成器使用详解
Jul 22 Python
Python函数中的可变长参数详解
Sep 12 Python
基于Python绘制美观动态圆环图、饼图
Jun 03 Python
Python操作word文档插入图片和表格的实例演示
Oct 25 Python
python中使用.py配置文件的方法详解
Nov 23 Python
python matplotlib模块基本图形绘制方法小结【直线,曲线,直方图,饼图等】
Apr 26 #Python
简单了解Java Netty Reactor三种线程模型
Apr 26 #Python
Python Selenium截图功能实现代码
Apr 26 #Python
使用Pycharm(Python工具)新建项目及创建Python文件的教程
Apr 26 #Python
Python实现密钥密码(加解密)实例详解
Apr 26 #Python
Python基于QQ邮箱实现SSL发送
Apr 26 #Python
Eclipse配置python默认头过程图解
Apr 26 #Python
You might like
PHP strncasecmp字符串比较的小技巧
2011/01/04 PHP
php正则匹配html中带class的div并选取其中内容的方法
2015/01/13 PHP
CI框架AR操作(数组形式)实现插入多条sql数据的方法
2016/05/18 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
2017/01/19 PHP
使用ThinkPHP生成缩略图及显示
2017/04/27 PHP
静态图片的十一种滤镜效果--不支持Ie7及非IE浏览器。
2007/03/06 Javascript
一些常用的JS功能函数(2009-06-04更新)
2009/06/04 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
2010/11/14 Javascript
Jquery插件 easyUI属性汇总
2011/01/19 Javascript
jQuery验证元素是否为空的两种常用方法
2015/03/17 Javascript
jquery比较简洁的软键盘特效实现方法
2015/03/19 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
2016/05/12 Javascript
bootstrap+jQuery实现的动态进度条功能示例
2017/05/25 jQuery
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
js实现图片3D轮播效果
2019/09/21 Javascript
[07:31]DOTA2卡尔工作室 英雄介绍主宰篇
2013/06/25 DOTA
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
python多进程共享变量
2016/04/06 Python
python 3.5实现检测路由器流量并写入txt的方法实例
2017/12/17 Python
python解析yaml文件过程详解
2019/08/30 Python
pyspark对Mysql数据库进行读写的实现
2020/12/30 Python
HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题
2012/12/13 HTML / CSS
阿波罗盒子:Apollo Box
2017/08/14 全球购物
俄罗斯运动鞋商店:Sneakerhead
2018/05/10 全球购物
文员岗位职责
2013/11/09 职场文书
面料业务员岗位职责
2013/12/26 职场文书
三八红旗集体先进事迹材料
2014/05/22 职场文书
学校节能宣传周活动总结
2014/07/09 职场文书
领导班子四风对照检查材料
2014/09/23 职场文书
作风建设年度心得体会
2014/10/29 职场文书
2014年稽查工作总结
2014/12/20 职场文书
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
2021/05/26 Python
使用Nginx的访问日志统计PV与UV
2022/05/06 Servers