总结python输出中出现的字符串总数

2024-04-24 19:11:00 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,我想显示Dest port number 53出现了多少次,并且日志文件中有2000个数据,所以我需要显示每个Dest port sum。这是我的密码:

def main():
    f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
    if f is None:
        print("File not found")
        return
    s = splitline(f)
    for el in s:
        if len(el) > 50:
            p = parselog(el)
            if "dstport" in p:

             print("Dest Port : %s" % p["dstport"])
             if "app" in p:
                 print("Apps : %s" % p["app"])
            print("")

输出:

Dest Port : 53
Apps : DNS

Dest Port : 123
Apps : NTP

Dest Port : 53
Apps : DNS

Dest Port : 53
Apps : DNS

Tags: apps文件数据inappnumberifport
1条回答
网友
1楼 · 发布于 2024-04-24 19:11:00
def main():
    f = openfile("/Users/rin/Desktop/new sec/2017-04-18_010.082.012.003.txt")
    if f is None:
        print("File not found")
        return
    s = splitline(f)

    # add a counter
    counts = {}

    for el in s:
        if len(el) > 50:
             p = parselog(el)

             if "dstport" in p:
                 # increment counter
                 if p["dstport"] in counts:
                     counts[str(p["dstport"])] += 1
                 else:
                     counts[str(p["dstport"])] = 1
                 print("Dest Port : %s" % p["dstport"])
             if "app" in p:
                 print("Apps : %s" % p["app"])
             print("")

    # output the count
    for k, v in counts.iteritems():
         print 'Dest Port %s Count: %s' % (k, v)

相关问题 更多 >