诶咦啊哦喂 2021-05-31 11:30 采纳率: 52.9%
浏览 7
已采纳

然后怎么输出出现次数前十的单词??[face]emoji:010.png[/face][face]e

然后怎么输出出现次数前十的单词??[face]emoji:010.png[/face][face]emoji:011.png[/face]
  • 写回答

1条回答 默认 最新

  • 小P聊技术 2021-06-02 21:57
    关注

    1 统计单词出现次数:

    def count_word():
        count = {}
        keys = []
        with open('test.txt') as f:
            lines = f.readlines()
        for line in lines:
            first_word = line.split(' ')[0]
            if first_word not in keys:
                keys.append(first_word)
        count = count.fromkeys(keys,0) #fromkeys方法不会直接修改原字典,它会返回一个新字典,所以如果要使用心字典必须先赋值
        print(count)
        for line in lines:
            first_word = line.split(' ')[0]
            count[first_word] +=1
        print(count)

     2 前10出现的单词:

    import re
    from collections import Counter
     
    with open('1.txt', 'r', ) as f:
        words = f.read()                         # 将文件的内容全部读取成一个字符串
        count = Counter(re.split(r"\W+", words))  # 以单词为分隔
     
    result = count.most_common(10)                # 统计最常使用的前10个
    print(result)
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵