我正在为Python类做一个非常简单的作业问题,涉及到关于字符,单词及其相对频率等的各种统计数据.目前我正在尝试分析一串文本并获取每个唯一单词的列表.文本后跟它的使用次数.我对Python(或任何语言)的知识非常有限,因为这是一门入门课程,因此只提出以下代码:
for k in (""",.’?/!":;«»"""):
text=text.replace(k,"")
text=text.split()
list1=[(text.count(text[n]),text[n]) for n in range(0,len(text))]
for item in sorted(list1, reverse=True):
print("%s : %s" % (item[1], item[0]))
Run Code Online (Sandbox Code Playgroud)
不幸的是,这打印出文本的每个单词(按照出现的顺序),然后是频率n,n次.显然这是非常无用的,我想知道我是否可以在我已编写的内容中添加一些漂亮的小代码,使每个单词只出现在此列表中一次,然后最终按降序排列.我见过的所有其他问题都使用了很多我们还没有学过的代码,所以我认为答案应该相对简单.