任何单词在字符串中出现了多少次。单词中的每个字母大小写(大写或小写)都很重要。输出中的行可以按任何顺序排列:

How many times any word occurred in string. Each letter case (upper or lower) in word matters. Lines in output can be in any order.:

任何单词在字符串中出现了多少次。单词中的每个字母大小写(大写或小写)都很重要。输出中的行可以按任何顺序排列。:

我们尝试了列表,我们尝试了字典,我们也尝试了 Zen

我试过这个:

sequence_of_sentences = ['We tried list and we tried dicts also we tried Zen']
from collections import Counter
counts = Counter()
for sentence in sequence_of_sentences:
    counts.update(word.strip('.,?!"\'') for word in sentence.split())
print(counts)

但我怎样才能像这样列出它们:

and 1
We 1
tried 3
dicts 1
list 1
we 2
also 1
Zen 1
>>> for key,value in counts.items():
...     print(key,value)
...
dicts 1
also 1
list 1
Zen 1
and 1
We 1
we 2
tried 3

collections.Counter 是 dict subclass 用于计算可哈希对象,其中存储元素 作为键并算作它们的值。所以你可以应用字典的所有功能:

for key,value in counts.items():
    print(key,value)

你也可以用collections.defaultdict,比计数器快

>>> my_dict = collections.defaultdict(int)
>>> a
'We tried list and we tried dicts also we tried Zen' 
>>> for x in a.split():
...     my_dict[x] +=1
... 
>>> my_dict
defaultdict(<class 'int'>, {'list': 1, 'We': 1, 'Zen': 1, 'tried': 3, 'also': 1, 'dicts': 1, 'we': 2, 'and': 1})