输入若干行,每行一个单词,输出按单词出现次数,并以元组形式将单词出现频次和单词存放在嵌套列表中
时间: 2024-09-27 21:14:57 浏览: 46
Python查找相似单词的方法
当你需要处理文本数据,统计每个单词出现的频率时,可以采用Python编程语言中的字典(Dictionary)和列表(List)相结合的方式来实现。下面是一个简单的步骤说明:
1. 创建一个空列表,用于存储元组,元组的第一个元素是单词,第二个元素是单词出现的次数。
```python
word_counts = []
```
2. 打开输入文件或者逐行读取字符串,对每一行进行分割得到单词列表。
```python
with open('input.txt', 'r') as file:
for line in file:
words = line.strip().split()
```
这里的`strip()`函数去掉单词前后的空白字符。
3. 遍历单词列表,检查当前单词是否已经在`word_counts`中,如果不在,则添加新的元组(单词,1),如果已存在,则增加计数。
```python
for word in words:
if (word,) not in word_counts:
word_counts.append((word, 1))
else:
index = word_counts.index((word,))
word_counts[index] = (word, word_counts[index][1] + 1)
```
这里我们假设元组 `(word,)` 作为字典的键,因为在字典中,键必须是唯一的。
4. 最后,你可以遍历`word_counts`并按照元组的第二个元素(即频率)对列表进行排序,以便查看出现次数最多的单词。
```python
word_counts.sort(key=lambda x: x[1], reverse=True)
```
阅读全文