zoukankan      html  css  js  c++  java
  • 第四次作业

    一.小说词频统计

    import jieba
    f=open('fly.txt','r',encoding='utf-8')
    lines=f.read()
    f.close()
    
    sep = ',。?!;:“”‘’-——<_/>'
    for en in sep:
        lines=lines.replace(en, '')
    
    lines = list(jieba.cut_for_search(lines))
    
    strSet = set(lines)
        #print(len(strSet), strSet)
    
    strDict = dict()
    for word in strSet:
        strDict[word] = lines.count(word)
            #print(len(strDict), strDict)
    
    wcList = list(strDict.items())
    #print(wcList)
    wcList.sort(key=lambda x: x[1], reverse=True)
    #print(wcList)
    
    for i in range(20):
        print(wcList[i])

    运行结果

    二.英文歌曲频次统计

    f = open('marry you.txt', 'r', encoding='utf-8')
    # 通过文件读取字符串 str
    str = f.read()
    f.close()
    print(str)
    
    #预处理标点符号
    str = str.replace('.','')
    print(str)
    
    #预处理特殊字符
    sep = '.,:'';?!-_'
    for ch in sep:
        str = str.replace(ch,'')
        print(str)
    
    #分解提取单词 list
    strlist = str.split()
    print(len(strlist),strlist)
    
    #单词计数set
    strSet  = set(strlist)
    print(len(strSet),strSet)
    
    #单词计数dict
    strDict={}
    for word in strSet:
        strDict[word]=strlist.count(word)
        print(len(strDict),strDict)
    # 词频排序list.sort(key=)
        Dict = dict(strDict)
        DictList = list(Dict.items())
        print(DictList)
        DictList.sort(key=lambda x: x[1], reverse=True)
        print(DictList)
    
    # 排除语法型词汇,代词、冠词、连词等无语义词
    strSet = set(strSet)
    exclude = {'a', 'and', 'the', 'in', 'you'}
    exset = strSet - exclude
    print(len(exset), exset)
    # 输出TOP(20)
    for i in range(20):

    运行结果

  • 相关阅读:
    关于接口测试的一些个人总结
    PMP学习考试回顾与心得
    RHCE第2课
    RHCE第1课
    kafka中对于zookeeper的理解和leader选举过程
    基于python的Selenium使用
    安装python第三方包的几种方式
    Vi命令下几种容易混淆的插入方式
    python单元测试框架unittest
    关于SQL子查询的一个问题
  • 原文地址:https://www.cnblogs.com/didi-l/p/9722283.html
Copyright © 2011-2022 走看看