if group not in g:
g[group] = set()
g[group].add(name)
Run Code Online (Sandbox Code Playgroud)
浏览具有以下结构的组列表:
Group: A
Name: Bob
Run Code Online (Sandbox Code Playgroud)
并将属于特定组的人员的姓名添加到集合中.集合中的名称是唯一的,我们不知道组中有多少相似的名称.因此,例如,如果有两个'Bob'名称或5'Mike'名称,我如何计算名称的多次出现以及具有以下内容:
Group A: Bob 2, Mike 5
Group B: Jane 4
Run Code Online (Sandbox Code Playgroud)
等等.提前致谢.
Tim*_*ker 37
看起来你可能会更好用一个柜台:
>>> from collections import Counter
>>> mylist = ["Bob", "Mike", "Bob", "Mike", "Mike", "Mike", "Bob"]
>>> Counter(mylist)
Counter({'Mike': 4, 'Bob': 3})
Run Code Online (Sandbox Code Playgroud)
使用dicts的词典进行计数,例如如下:
tralala = dict()
for group, name in [('A', 'Bob'), ('B', 'Jane'), ('A', 'Bob')]:
tralala.setdefault(group, dict()).setdefault(name, 0)
tralala[group][name] += 1
print tralala
Run Code Online (Sandbox Code Playgroud)
这导致了
{'A': {'Bob': 2}, 'B': {'Jane': 1}}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14515 次 |
| 最近记录: |