如何使用Python在文本文件中查找出现最频繁的单词?
在本文中,我们将向您展示如何使用python查找给定文本文件中出现最频繁的单词。
假设我们已经拿到了一个名为 ExampleTextFile.txt 由一些随机文本组成的文件。我们将返回给定文本文件中出现最频繁的单词
ExampleTextFile.txt
算法(步骤)
以下是要执行所需任务的算法/步骤 –
-
导入 计数器 函数(计数器类是Python3的集合模块提供的一种对象数据集形式。集合模块向用户公开了专门的容器数据类型,作为Python的通用内置替代品,例如字典,列表和元组。计数器是计算可哈希对象的子类。调用时,它会隐式地创建一个可迭代的哈希表)来自集合模块
-
创建一个变量以存储文本文件的路径。
-
创建一个列表以存储所有单词。
-
使用 开放() 函数(打开一个文件并返回文件对象作为结果)通过将文件名和模式作为参数传递给它以只读模式打开文本文件(这里“ r ”表示只读模式)。
-
使用for循环遍历文件中的每行。
-
使用 split() 函数(将字符串拆分为列表。我们可以定义分隔符;默认分隔符是任何空格)将文本文件内容拆分为单词列表并将其存储在变量中。
-
使用for循环遍历单词列表。
-
使用 append() 函数(在列表末尾添加元素),将每个单词附加到列表中。
-
使用 Counter() 函数(将单词的频率作为键值对给出)计算所有单词的频率(单词出现的次数)。
-
创建一个变量以存储最大频率。
-
在上述单词频率字典中使用for循环。
-
使用if条件语句和in关键字,检查单词的频率是否大于最大频率。
-
如果单词的频率大于最大频率。
-
创建一个变量以存储文本文件中最常出现的单词。
-
打印文本文件中最常出现的单词。
-
使用 close() 函数(用于关闭打开的文件)关闭输入文件。
例
以下程序遍历文本文件的行并使用来自集合模块的计数器函数打印文本文件中的键值对频率 –
输出
执行后,上面的程序将生成以下输出 −
在本程序中,我们从一个文本文件中读取一些随机文本。我们将整个文件读取完毕,将其拆分为单词,并将文本文件中的所有单词添加到列表中。我们使用 Counter() 方法统计文本文件中所有单词的频率,该方法返回一个字典,其中键为单词,值为单词的频率。然后,我们遍历字典中的单词,检查频率是否大于最大频率。如果是,则这是最常见的单词,因此我们将结果保存在一个变量中,并将最大频率更新为当前单词的频率。最后,我们显示最常用的单词。
结论
本文向我们展示了如何读取文件、逐行遍历文件并检索该行中的所有单词。一旦得到单词,我们可能会反转单词、更改大小写、检查元音、检索单词长度等。我们还学习了如何使用 Counter() 方法来确定单词列表的频率。该函数可用于确定字符串、列表、元组等的频率。