Как рассчитать совпадения с коллекциями. Counter () в Python?

Я узнал оcollections.Counter () Недавно я начал пользоваться этим классом, и, поскольку это удобный (и быстрый) способ подсчета материала, я начал его использовать.

Но недавно я обнаружил ошибку в моей программе из-за того, что когда я пытаюсь обновить счет с помощью кортежа, он фактически обрабатывает его как последовательность иupdates the count for each item in the tuple вместо того чтобы считатьhow many times I inserted that particular tuple.

Например, если вы запустите:

import collections
counter = collections.Counter()
counter.update(('user1', 'loggedin'))
counter.update(('user2', 'compiled'))
counter.update(('user1', 'compiled'))

print counter

Вы получите:

Counter({'compiled': 2, 'user1': 2, 'loggedin': 1, 'user2': 1})

в следствии. Есть ли способ подсчета кортежей с помощью Counter ()? Я мог бы соединить строки, но это ... некрасиво. Могу ли я использовать именованные кортежи? Реализовать свой собственный очень простой словарный счетчик? Не знаю, что лучше.

Ответы на вопрос(1)

Ваш ответ на вопрос