您可以使用defaultdict轻松完成加法部分。默认字典的工作方式与普通字典类似,不同之处在于它具有用于空密钥存储的默认值,因此您可以在遍历数据集时轻松地增加计数器的数量。
a=[('a','k1'),('b','k2'),('a','k2'),('a','k1'),('b','k2'),('a','k1'),('b','k2'),('c','k3'),('c','k4')]
from collections import defaultdict
b = defaultdict(int)
for item in a:
b[item] += 1
print b
defaultdict(<type 'int'>, {('a', 'k2'): 1, ('c', 'k3'): 1, ('b', 'k2'): 3, ('a', 'k1'): 3, ('c', 'k4'): 1})
为了进行漂亮的打印,只需遍历结果数据并按需要打印即可。
for key, value in b.iteritems():
print '%s %s %s' % (key[0], key[1], value)