小程序大功能
对一批报文要处理要处理里面的得分,发现python linecache ,特记录如下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#!/usr/bin/env python
# -*- coding: utf-8 -*-
''''提取result结果分值'''
import linecache
import os
import os.path
rootdir = r "./815old/"
for parent, dirnames, filenames in os.walk(rootdir): # 三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字
for filename in filenames: # 输出文件信息
files = os.path.join(parent, filename) # 输出文件路径信息
count = len ( open (files, 'r' ).readlines()) # 行数
str = linecache.getlines(files) # 所有文件的字符串
filename = str [ 2 ] #第三行
if count > 6 : # 行数大于5行表示命中
matchRatio = str [ 8 ] #第九行
print filename[ 58 : - 2 ], " " , matchRatio[ 15 :], "\r"
else : # 没有命中 matchRatio 赋值0
print filename[ 58 : - 2 ], " " , '0' , "\r"
|
文本格式如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
results {
fileID: "386e86d2e3991de32a028b7e26e58ffd"
filename: "/opt/vfpgen/video_file/192.168.142.199/video/Avatar.2009.iTALiAN.READNFO.LD.TS.XviD-SiLENT.CD1[S.o.M.].avi"
filetype: 1
vfpQueryResults {
fileID: "09b509f6c625aeb525f6f1c8e09725d6"
filename: "/opt/SmartVision/system/copyrightfpdb//dbfp/09b509f6c625aeb525f6f1c8e09725d6.DB.cdvs"
matchScore: 0.85874754
matchRatio: 0.53333336
dbID: "copyright_library_db"
startframe: 16210
endframe: 97240
}
}
|
以上这篇python linecache 处理固定格式文本数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/meiguopai1/article/details/78417410