6-2 jmu-Java-m06 统计一篇英文文章中出现的不重复单词的个数

Java实现:统计英文文章不重复单词数量
这篇博客介绍了如何使用Java编程统计一篇英文文章(以'!!!'结束)中不区分大小写的不重复单词个数。示例中,输入的文章包含多个句子,输出结果显示共有55个不同的单词。

6-2 jmu-Java-m06 统计一篇英文文章中出现的不重复单词的个数
输入一篇英文文章,碰到"!!!"的时候停止,输出文章中出现的不重复单词的个数(注意:单词不区分大小写,如:The和the为一个单词)

输入格式:
一篇英文文章,以"!!!"结尾

输出格式:
不重复单词的个数

输入样例:
Unmanned aerial vehicles have been adopted in the inspection of violations Procurators will file public interest litigations against perpetrators who will need to replant trees take down illegal buildings control pollution and compensate environment-related losses
The Yellow River is the second longest river in China It originates in the northwestern province of Qinghai and runs through nine provinces and autonomous regions in western central north and eastern China
!!!
输出样例:
55

import java.util.ArrayList;
import java.
可以使用 Python 中的字典(dict)来实现单词数量的统计和排序。 首先,我们需要读入文本文件,并将其转换为一个字符串。可以使用 Python 中的 open 函数打开文件,并使用 read 方法读取文件内容。为了方便处理,我们可以将所有字母都转换为小写字母。 ```python with open('text.txt', 'r') as f: text = f.read().lower() ``` 接下来,我们需要将字符串拆分成单个单词,并统计它们的出现次数。可以使用 Python 中的 split 方法来拆分字符串,并使用一个字典来存储每个单词出现的次数。如果字典中已经存在该单词,则将其出现次数加一;否则,在字典中添加该单词并将其出现次数设置为一。 ```python word_count = {} for word in text.split(): if word in word_count: word_count[word] += 1 else: word_count[word] = 1 ``` 最后,我们可以根据单词出现的次数对字典进行排序,并将结果打印出来。可以使用 Python 中的 sorted 函数和 lambda 表达式来实现排序。 ```python sorted_word_count = sorted(word_count.items(), key=lambda x: x[1], reverse=True) for word, count in sorted_word_count: print(f'{word}: {count}') ``` 完整代码如下: ```python with open('text.txt', 'r') as f: text = f.read().lower() word_count = {} for word in text.split(): 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) for word, count in sorted_word_count: print(f'{word}: {count}') ``` 其中,text.txt 是要统计的文本文件的文件名。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值