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

yipeiwu_com6年前Python基础

来源:在工作过程中,需要统计一些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中的全局变量用法分析

本文实例分析了python中的全局变量用法。分享给大家供大家参考。具体分析如下: Python是一种面向对象的开发语言,在函数中使用全局变量,一般应作全局变量说明,只有在函数内经过说明的...

Python实现脚本锁功能(同时只能执行一个脚本)

Python实现脚本锁功能(同时只能执行一个脚本)

1. 文件锁 脚本启动前检查特定文件是否存在,不存在就启动并新建文件,脚本结束后删掉特定文件。 通过文件的判断来确定脚本是否正在执行。 方法实现也比较简单,这里以python脚本为例...

Python 对输入的数字进行排序的方法

要求,输入一串数字,并以列表的形式打印出来。 number = input('请输入一串数字:') print(number) print(type(number)) 假设输...

Python简单获取二维数组行列数的方法示例

Python简单获取二维数组行列数的方法示例

本文实例讲述了Python简单获取二维数组行列数的方法。分享给大家供大家参考,具体如下: import numpy as np x = np.array([[1,2,5],[2,3,...

python redis 批量设置过期key过程解析

这篇文章主要介绍了python redis 批量设置过期key过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在使用 Redi...