首页 > 解决方案 > 从文件中读取并查找单词计数的 Python 代码

问题描述

这是问题陈述

编写一个程序来阅读 mbox-short.txt 并找出谁发送的邮件数量最多。该程序查找“发件人”行并将这些行的第二个单词作为发送邮件的人。该程序创建一个 Python 字典,将发件人的邮件地址映射到它们在文件中出现的次数。生成字典后,程序使用最大循环读取字典以找到最多产的提交者。

name = input("Enter file:")
if len(name) < 1 : 
    name = "mbox-short.txt"
handle = open(name)
a=dict()
for line in handle:
    if line.startswith('From'):
        line=line.rstrip()
        words=line.split()
        for word in words:
            a[word]=a.get(name,0)+1
            print(a)

这是我写的代码。我知道这是不完整的,因为我无法弄清楚这样做的逻辑。请帮忙。所需的输出是 cwen@iupui.edu 5,其中 cwen@iupui.edu 是出现最多的单词,5 是计数。因此,这意味着 cwem@iupui.edu 在文本文件中出现了 5 次。请记住,每个发件人电子邮件 ID 在第一个单词之后开始(S0 第一个单词来自,第二个单词是发件人 ID(所有不同的域都不同))。所以,我需要出现最多的发件人 ID 的最大计数。希望这可以帮助。如果你们都想了解更多详情,请告诉我。请帮忙,因为我坚持这一点。

标签: pythonpython-3.xdata-structures

解决方案


推荐阅读