基于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 相关文章推荐
如何解决django配置settings时遇到Could not import settings 'conf.local'
Nov 18 Python
Using Django with GAE Python 后台抓取多个网站的页面全文
Feb 17 Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 Python
Python探索之创建二叉树
Oct 25 Python
用python实现对比两张图片的不同
Feb 05 Python
python构建深度神经网络(DNN)
Mar 10 Python
python: 自动安装缺失库文件的方法
Oct 22 Python
Django中自定义模型管理器(Manager)及方法
Sep 23 Python
Python之——生成动态路由轨迹图的实例
Nov 22 Python
python获取array中指定元素的示例
Nov 26 Python
tf.concat中axis的含义与使用详解
Feb 07 Python
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
Jun 26 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 xml-rpc远程调用
2008/12/19 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
PHP性能优化工具篇Benchmark类调试执行时间
2011/12/06 PHP
php下pdo的mysql事务处理用法实例
2014/12/27 PHP
php实现用户登陆简单实例
2017/04/04 PHP
详解如何在云服务器上部署Laravel
2017/06/30 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
2017/07/19 PHP
javascript脚本编程解决考试分数统计问题
2008/10/18 Javascript
JavaScript 图片预览效果 推荐
2009/12/22 Javascript
修改jquery.lazyload.js实现页面延迟载入
2010/12/22 Javascript
深入探密Javascript数组方法
2015/01/08 Javascript
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
jQuery实现默认是闭合的FAQ展开效果菜单
2015/09/14 Javascript
chrome调试javascript详解
2015/10/21 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
使用 stylelint检查CSS_StyleLint
2016/04/28 Javascript
浅谈bootstrap源码分析之scrollspy(滚动侦听)
2016/06/06 Javascript
bootstrapValidator.min.js表单验证插件
2017/02/09 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
JS倒计时实例_天时分秒
2017/08/22 Javascript
pycharm 使用心得(一)安装和首次使用
2014/06/05 Python
python计算日期之间的放假日期
2018/06/05 Python
python爬取百度贴吧前1000页内容(requests库面向对象思想实现)
2019/08/10 Python
Python基于class()实现面向对象原理详解
2020/03/26 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
python中pathlib模块的基本用法与总结
2020/08/17 Python
海外淘书首选:AbeBooks
2017/07/31 全球购物
英国领先的酒杯和水晶玻璃器皿制造商:Dartington Crystal
2019/06/23 全球购物
如何判断一段程序是由C 编译程序还是由C++编译程序编译的
2013/08/04 面试题
写好自荐信的要点
2013/11/06 职场文书
理工科学生的自我评价
2013/12/15 职场文书
年会搞笑主持词串词
2014/03/24 职场文书
共产党员承诺书
2014/03/25 职场文书
费用申请报告范文
2015/05/15 职场文书
MySQL学习总结-基础架构概述
2021/04/05 MySQL
解决Golang中ResponseWriter的一个坑
2021/04/27 Golang