计算列表中单词的频率并按频率排序

计算列表中单词的频率并按频率排序

我使用的是Python 3.3

我需要创建两个列表,一个用于单词,另一个用于单词的频率。

我必须根据频率列表对唯一单词列表进行排序,以便具有最高频率的单词在列表中排在第一位。

我有文本设计但不确定如何在Python中实现它。

到目前为止我找到的方法使用了Counter我们还没有学过的字典或字典。我已经从包含所有单词的文件中创建了列表,但不知道如何查找列表中每个单词的频率。我知道我需要一个循环才能做到这一点,但无法弄明白。

这是基本设计:

 original list = ["the", "car",....]
 newlst = []
 frequency = []
 for word in the original list       if word not in newlst:
           newlst.append(word)
           set frequency = 1
       else
           increase the frequency
 sort newlst based on frequency list


汪汪一只猫
浏览 425回答 3
3回答

开满天机

用这个from collections import Counterlist1=['apple','egg','apple','banana','egg','apple']counts = Counter(list1)print(counts)# Counter({'apple': 3, 'egg': 2, 'banana': 1})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python