Counter的Python元组

时间:2015-10-05 17:46:35

标签: python tuples counter

str_tuple = "abcd",
a = Counter()  
a.update(str_tuple)

a[('abcd',)] == 0因为Counter计算了'abcd'字符串,而不是元组。我需要数一数元组。

1 个答案:

答案 0 :(得分:1)

Counter.update()需要计算序列。如果需要对元组进行计数,请在将该值传递给Counter.update()方法之前将其放入序列中:

a.update([str_tuple])

或使用:

a[str_tuple] += 1

将一个元组的计数递增一。

演示:

>>> from collections import Counter
>>> str_tuple = "abcd",
>>> a = Counter()  
>>> a.update([str_tuple])
>>> a
Counter({('abcd',): 1})
>>> a = Counter()  
>>> a[str_tuple] += 1
>>> a
Counter({('abcd',): 1})