计算 strings = ('puppy', 'kitten', 'puppy', 'puppy','weasel', 'puppy', 'kitten', 'puppy')每个单词出现的次数,分别用基础循环、setdefault,defaultdict函数实现
时间: 2024-11-25 16:04:26 浏览: 7
JavaScript基础语法-strings.pdf
在Python中,我们可以使用基础循环和内置的数据结构`collections.Counter`来统计字符串列表中每个单词的出现次数。这里我会提供两种方法:
**1. 使用基础循环(List Comprehension + Dictionary)**
```python
from collections import defaultdict
strings = ['puppy', 'kitten', 'puppy', 'puppy','weasel', 'puppy', 'kitten', 'puppy']
word_counts = {}
# 基础循环
for word in strings:
if word not in word_counts:
word_counts[word] = 0
word_counts[word] += 1
print(word_counts)
```
**2. 使用`collections.defaultdict`**
```python
from collections import defaultdict
strings = ['puppy', 'kitten', 'puppy', 'puppy','weasel', 'puppy', 'kitten', 'puppy']
word_counts = defaultdict(int)
# 使用defaultdict自动初始化计数
for word in strings:
word_counts[word] += 1
print(word_counts)
```
这两种方法都可以得到结果,第一种更为直观,而第二种则利用了`defaultdict`的特性,可以简化计数过程。
阅读全文