• 解决遇到以“X-DSPAM-Confidence:”开头的行求平均值


    python一个小小的笔记,对于初学者的我来说,琢磨这道题花了一些时间。具体的问题和注意事项和实现方式都在下面的代码中,若不清楚可以留言!!!

    题目:写一个程序,让用户输入文件名,然后读取文件,按行的形式j进行查看。遇到以“X-DSPAM-Confidence:”开头的行,提取该行中的浮点数。统计行数,文件读取结束后,打印垃圾邮件平均值。

    #.readline() 和 .readlines() 之间的差异是后者一次读取整个文件,返回的是一个数组
    #Question:编写一个程序,让用户输入文件名,然后读取文件,按行的形式j进行查看。
    #遇到以“X-DSPAM-Confidence:”开头的行,提取该行中的浮点数。统计行数,文件读取结束后,打印垃圾邮件平均值。
    fname=raw_input('Enter file Name:')
    fhand=open(fname)
    book=fhand.readlines()
    count=0
    dateSum=0
    for index in range(1,len(book)):
        if book[index].find('X-DSPAM-Confidence:')!=-1:   #返回值=-1表示没找到相应的字段
            x=book[index].find(':')    #不能直接find(X-DSPAM-Confidence:)如果直接find这个字段,若首行是X-DSPAM-Confidence:那么返回的索引值便是0
            y=book[index]
            date=float(y[x+2:])  
    dateSum=date+dateSum count=count+1 #print(date) #此处输出的是每个具体的浮点数 print ('以“X-DSPAM-Confidence:”开头的总行数为'+str(count)+'行,总浮点数数值相加为'+str(dateSum)+'其平均数为'+str(dateSum/count))

      结果图:

  • 相关阅读:
    Mapreduce实例-Top Key
    Mapreduce实例-分组排重(group by distinct)
    storm0.9.0.1升级安装
    mysql配置文件my.cnf详解
    MYSQL管理之主从同步管理
    一个经典实用的iptables shell脚本
    sed实例精解--例说sed完整版
    常用的主机监控Shell脚本
    Python(九)Tornado web 框架
    缓存、队列(Memcached、redis、RabbitMQ)
  • 原文地址:https://www.cnblogs.com/HuangDaDa/p/8024705.html
Copyright © 2020-2023  润新知