pohgen
@pohgen

Как посчитать повторяющиеся данные в списке?

selled = ["Кофе с молоком", "Черный кофе", "Кофе обычный", "Кофе с молоком", "Кофе обычный", "Кофе с молоком"]
itogo = collections.Counter(selled)
print("Vsego prodano: " + str(itogo))

Этот код выводит так:
Vsego prodano: Counter({'Кофе с молоком': 3, 'Кофе обычный': 2, 'Черный кофе': 1})


Как сделать так чтобы вид был более презентабельный (без слова "Counter" и без скобок)? Я додумался до варианта выводить как-то через индекс полученного словаря, но не уверен, что это правильное решение. Поэтому хочу узнать какие есть способы.
  • Вопрос задан
  • 74 просмотра
Решения вопроса 1
0xD34F
@0xD34F
print('\n'.join(f'{k}: {v}' for k, v in collections.Counter(selled).items()))
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Цикл
Ответ написан
Комментировать
aRegius
@aRegius
Python Enthusiast
pprint

pprint(dict(itogo), width=1)
--- или ---
for item, count in itogo.items():
	  print(item, count, sep=": ")
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы