首页  >  文章  >  后端开发  >  如何在 Python 中按频率对单词进行计数和排序?

如何在 Python 中按频率对单词进行计数和排序?

Barbara Streisand
Barbara Streisand原创
2024-10-21 21:33:311011浏览

How to Count and Sort Words by Their Frequency in Python?

按频率对单词进行计数和排序

计算给定列表中单词的频率是编程中的常见任务。要根据频率对唯一单词列表进行排序,可以利用 Python 的 Counter 类。

我们首先从集合模块导入 Counter 类:

<code class="python">from collections import Counter</code>

考虑以下示例:

<code class="python">list1=['apple','egg','apple','banana','egg','apple']</code>

为了计算每个单词的频率,我们用单词列表实例化一个 Counter 对象:

<code class="python">counts = Counter(list1)</code>

生成的 Counter 对象进行计数,提供类似字典的功能接口,其中键是唯一单词,值是它们的频率:

<code class="python">print(counts)
# Counter({'apple': 3, 'egg': 2, 'banana': 1})</code>

要根据频率对唯一单词进行排序,我们可以利用 Counter 对象的most_common() 方法:

<code class="python">sorted_counts = counts.most_common()</code>

most_common() 方法返回一个元组列表,其中每个元组由一个单词及其频率组成。我们可以根据频率降序排列此列表:

<code class="python">sorted_counts.sort(key=lambda x: x[1], reverse=True)</code>

生成的sorted_counts列表现在将包含按频率降序排序的唯一单词。

以上是如何在 Python 中按频率对单词进行计数和排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn