python实现根据文件关键字进行切分为多个文件的示例


Posted in Python onDecember 10, 2018

来源:在工作过程中,需要统计一些trace信息,也就是一些打点信息,而打点是通过关键字进行的,因此对一个很大的文件进行分析时,想把两个打点之间的内容单独拷贝出来进行分析。

#!/usr/bin/env python
#__*__ coding: utf-8 __*__
import re
import linecache
 
def fileParse():
 inputfile = input('Input SourcFile:') ##输入源文件,如A.txt
 fp = open(inputfile, 'r')
 
 number =[]
 lineNumber = 1
 keyword = input('Slice Keyword:') ##输入你要切分的关键字
 outfilename = input('Outfilename:')##输出文件名,如out.txt则写out即可,后续输出的文件是out0.txt,out1.txt...
 
 for eachLine in fp:  
  m = re.search(keyword, eachLine) ##查询关键字
  if m is not None:
   number.append(lineNumber) #将关键字的行号记录在number中
  lineNumber = lineNumber + 1
 size = int(len(number))
 for i in range(0,size-1):
  start = number[i]
  end = number[i+1]
  destLines = linecache.getlines(inputfile)[start+1:end-1] #将行号为start+1到end-1的文件内容截取出来
  fp_w = open(outfilename + str(i)+'.txt','w') #将截取出的内容保存在输出文件中
  for key in destLines:
   fp_w.write(key)
  fp_w.close()
 
if __name__ == "__main__":
 fileParse()

以上这篇python实现根据文件关键字进行切分为多个文件的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
基于python编写的微博应用
Oct 17 Python
Python多线程扫描端口代码示例
Feb 09 Python
python实现可视化动态CPU性能监控
Jun 21 Python
OpenCV 边缘检测
Jul 10 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
python自动循环定时开关机(非重启)测试
Aug 26 Python
python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS)
Mar 18 Python
python实现126邮箱发送邮件
May 20 Python
PyQT5 实现快捷键复制表格数据的方法示例
Jun 19 Python
Python3爬虫mitmproxy的安装步骤
Jul 29 Python
Python3如何使用多线程升程序运行速度
Aug 11 Python
Python接口自动化系列之unittest结合ddt的使用教程详解
Feb 23 Python
Python文件常见操作实例分析【读写、遍历】
Dec 10 #Python
一篇文章搞懂Python的类与对象名称空间
Dec 10 #Python
django使用LDAP验证的方法示例
Dec 10 #Python
python在TXT文件中按照某一字符串取出该字符串所在的行方法
Dec 10 #Python
python文件拆分与重组实例
Dec 10 #Python
Python对excel文档的操作方法详解
Dec 10 #Python
使用python进行拆分大文件的方法
Dec 10 #Python
You might like
php教程 插件机制在PHP中实现方案
2012/11/02 PHP
php实现mysql封装类示例
2014/05/07 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
php创建、获取cookie及基础要点分析
2015/01/26 PHP
PHP实现的简单mock json脚本分享
2015/02/10 PHP
PHP中Closure类的使用方法及详解
2015/10/09 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
PHP实现数组和对象的相互转换操作示例
2019/03/20 PHP
ajaxControlToolkit AutoCompleteExtender的用法
2008/10/30 Javascript
JavaScript中URL编码函数代码
2011/01/11 Javascript
js树插件zTree获取所有选中节点数据的方法
2015/01/28 Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
2015/09/26 Javascript
关于JS中的apply,call,bind的深入解析
2016/04/05 Javascript
利用jquery实现下拉框的禁用与启用
2016/12/07 Javascript
js 递归和定时器的实例解析
2017/02/03 Javascript
基于复选框demo(分享)
2017/09/27 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
2019/05/22 Javascript
layui 实现表单和文件上传一起传到后台的例子
2019/09/16 Javascript
Python的Django框架中的表单处理示例
2015/07/17 Python
Python之时间和日期使用小结
2019/02/14 Python
Python处理时间日期坐标轴过程详解
2019/06/25 Python
Kears+Opencv实现简单人脸识别
2019/08/28 Python
python数据预处理 :样本分布不均的解决(过采样和欠采样)
2020/02/29 Python
python 如何调用 dubbo 接口
2020/09/24 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
HTML5之SVG 2D入门10—滤镜的定义及使用
2013/01/30 HTML / CSS
Ratchet 模态框的实现
2020/08/19 HTML / CSS
全球领先的在线cosplay服装商店:RoleCosplay
2020/01/18 全球购物
eharmony澳大利亚:网上约会服务
2020/02/29 全球购物
计算机专业职业生涯规划范文
2014/01/19 职场文书
电脑专业个人求职信范文
2014/02/04 职场文书
房屋买卖协议书范本
2014/04/10 职场文书
增员口号大全
2014/06/18 职场文书
微软PC Health Check电脑健康状况检查应用下载(Win11配置检测工具)
2021/06/26 数码科技
集英社今正式宣布 成立游戏公司“集英社Games”
2022/03/31 其他游戏