Подсчет количества букв
Есть код:
from collections import Counter
def chec(stroka):
c = []
for k, v in Counter(stroka).items():
if v > 1:
c.append(f'{k}{v}')
elif v == 1:
c.append(f'{k}')
print(*c, sep='', end='')
chec('aaabbvb')
На выходе a3b3v
А нужно a3b2vb
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Для этой задачи лучше всего использовать groupby:
from itertools import groupby
text = 'aaabbvb'
for c, v in groupby(text):
count = len(list(v))
print(f'{c}{count if count > 1 else ""}', end='')
# a3b2vb