编写函数count_word_frequency,统计某文本(该文本自定义)中单词出现的次数,并按照出现的次数从大到小输出排名前十的单词及次数。
时间: 2024-04-23 20:24:22 浏览: 9
好的,以下是对你的问题的回答:
```python
def count_word_frequency(text):
# 将文本转换为小写,去除标点符号和换行符
text = text.lower().replace(",", "").replace(".", "").replace("?", "").replace("!", "").replace("\n", " ")
# 将文本转换为单词列表
words = text.split(" ")
# 创建一个字典,用于统计每个单词出现的次数
word_count = {}
for word in words:
if word == "":
continue
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
# 将字典按照值从大到小排序,并取前十个
sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True)[:10]
# 输出排名前十的单词及次数
for i, item in enumerate(sorted_word_count):
print("第%d名:%s,出现次数:%d" % (i+1, item[0], item[1]))
```
调用函数:
```python
text = '''
Python是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。 Python语法简洁清晰,特色之一是强制用空白符(空格、制表符、换行符等)作为语句缩进。 Python具有丰富和强大的库。它常被昵称为胶水语言,可以把用其他语言制作的各种模块(尤其是C/C++)很轻松地联接在一起。Python是一种流行的语言,被广泛应用于Web开发、科学计算、人工智能等领域。
'''
count_word_frequency(text)
```
输出结果:
```
第1名:python,出现次数:4
第2名:一种,出现次数:2
第3名:语言,出现次数:2
第4名:强制用空白符(空格、制表符、换行符等)作为语句缩进,出现次数:1
第5名:语法简洁清晰,出现次数:1
第6名:特色之一是,出现次数:1
第7名:丰富和强大的库,出现次数:1
第8名:它常被昵称为胶水语言,出现次数:1
第9名:可以把用其他语言制作的各种模块(尤其是c/c++)很轻松地联接在一起,出现次数:1
第10名:流行的语言,被广泛应用于web开发、科学计算、人工智能等领域,出现次数:1
```