设计一道Python的代码练习题,结合字典和列表的知识
时间: 2024-02-26 15:57:16 浏览: 21
好的,这是一道练习使用字典和列表的 Python 代码题:
编写一个程序,要求用户输入一段英文文本,然后将文本中出现的每个单词的出现次数统计出来,并按照出现次数从多到少的顺序输出前 10 个出现次数最多的单词及其出现次数。
注意:在统计单词出现次数时,应该忽略单词的大小写,并且去除单词中的标点符号。
示例输入:
```
The quick brown fox jumps over the lazy dog. The dog barks at the fox, and the fox runs away.
```
示例输出:
```
1. the: 4
2. fox: 2
3. dog: 2
4. jumps: 1
5. quick: 1
6. brown: 1
7. over: 1
8. lazy: 1
9. barks: 1
10. runs: 1
```
实现思路:
1. 首先要去除输入文本中的标点符号,可以使用 Python 的 string 模块中的 `punctuation` 常量来获取所有的标点符号,然后使用 `str.translate()` 方法将其替换为空格。
2. 将文本字符串转换成单词列表,可以使用 `str.split()` 方法,将字符串按照空格分割成单词列表。
3. 统计单词出现次数,可以使用 Python 内置的 `collections.Counter` 类,它可以快速统计一个列表中每个元素出现的次数,并返回一个字典对象。
4. 对统计结果按照出现次数从多到少排序,并输出前 10 个结果。
代码实现: