在网上搜索一段英文句子,统计各单词出现的频率。 解题思路: (1)用空格替换所有标点符号 (2)用split拆分字符串,并将结果存入列表 (3)遍历列表,将单词及其出现的次数存入字典 (4)对字典排序(可按字母序,可按次数)后输出 用python写
时间: 2024-12-06 22:33:45 浏览: 27
tr命令在统计英文单词出现频率中的妙用
在Python中,你可以使用`collections.Counter`类来轻松地完成这个任务。这里是一个简单的步骤说明:
首先,导入需要的模块:
```python
from collections import Counter
import re
```
然后,定义一个函数来执行上述解题思路:
```python
def word_frequency(sentence):
# 使用正则表达式替换标点符号
sentence = re.sub(r'[^\w\s]', '', sentence)
# 拆分句子成单词列表
words_list = sentence.split()
# 使用Counter计算每个单词的频率
frequency = Counter(words_list)
# 按照单词出现次数排序,返回最常出现的单词及其频率
sorted_frequency = frequency.most_common()
return sorted_frequency
# 示例使用
sentence = "Here is a sample sentence with some repeated words. Words are separated by spaces."
print(word_frequency(sentence))
```
当你运行这段代码,它会返回一个列表,其中包含按词频降序排列的元组,每个元组的第一个元素是单词,第二个元素是该单词在句子中出现的次数。
阅读全文