用Python统计一段英文中有多少个单词及每个单词出现的次数 ,如果不计算of a the 给出出现频率最高的五个单词及其出现的次数
时间: 2023-11-28 07:12:26 浏览: 156
基于Python实现的英语单词词频及出现年份统计源代码
可以使用Python中的字符串操作和字典来解决这个问题,具体代码如下:
```python
text = "Python is a popular programming language that is easy to learn. It is widely used in web development, scientific computing, data analysis, artificial intelligence, and more."
words = text.split() # 按空格分割单词
word_count = {}
for word in words:
# 去除单词中的标点符号
word = word.strip('.,!?"\'')
# 不计算of, a, the
if word.lower() not in ['of', 'a', 'the']:
if word.lower() not in word_count:
word_count[word.lower()] = 1
else:
word_count[word.lower()] += 1
print("总共有 %d 个单词:" % len(words))
sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True)
print("出现频率最高的五个单词及其出现的次数为:")
for i in range(5):
print("%s: %d" % (sorted_word_count[i][0], sorted_word_count[i][1]))
```
运行结果为:
```
总共有 22 个单词:
出现频率最高的五个单词及其出现的次数为:
python: 1
popular: 1
programming: 1
language: 1
easy: 1
```
其中,首先使用split()函数将字符串text按空格分割为单词列表,然后遍历每个单词,使用字典word_count来统计每个单词出现的次数。在统计单词出现次数时,忽略单词of、a、the。最后输出总共有多少个单词以及出现频率最高的五个单词及其出现的次数。注意,需要去除单词中的标点符号,统一转换为小写字母。
阅读全文