Сжатие

Что нужно сделать

С увеличением объёма данных возникла потребность в сжатии этих данных без потери важной информации. Для этого было придумано кодирование, которое осуществляется следующим образом:

s = 'aaaabbсaa' преобразуется в 'a4b2с1a2', то есть группы одинаковых символов исходной строки заменяются на этот символ и количество его повторений в этой позиции строки.

Напишите программу, которая считывает строку, кодирует её предложенным алгоритмом и выводит закодированную последовательность на экран. Кодирование должно учитывать регистр символов.

Пример:

Введите строку: aaAAbbсaaaA

Закодированная строка: a2A2b2с1a3A1

Что оценивается

  • Результат вычислений корректен.
  • input содержит корректные приглашения для ввода.
  • Формат вывода соответствует примеру.
  • Переменные и функции имеют значащие имена, не только a, b, c, d
user_string = input('Введите строку: ')
temp = ''
broken = ''
new_string = ''

for i in user_string:
    if i != temp:
        broken += ' ' + i
        temp = i
    else:
        broken += i

for i in broken.split():
    new_string += str(i[0]) + str(len(i))

print('Закодированная строка: ', new_string)