import sys
strFilePath = 'E:\ParseLog\client.txt' ##sys.argv[1]
strKW = 'dt : '
kwLen = len(strKW)
loglist = []
class LogItem(object):
def __init__(self, line, cost):
super(LogItem, self).__init__()
self.line = line
self.cost = cost
def ParseLine(line):
index = line.find(strKW)
#if(strKW in line):
if(-1 != index):
timeCost = float(line[index + kwLen:])
loglist.append(LogItem(line, timeCost))
#print(line)
def PrintLogList(l):
logNum = min(len(loglist), 20)
for i in range(logNum):
print(loglist[i].line)
def Compare(elem):
return elem.cost
#逐行读取
with open(strFilePath, 'r') as f:
for line in f.readlines():
ParseLine(line)
loglist.sort(key = Compare, reverse = True)
PrintLogList(loglist)
日志格式如:[2020.4.28] [15:33:18]: [LUA-print] RemovePlayer dt : 0.1279296875