Python: создать список, отражающий кодировку длин серий из списка

Список Python: Упражнение — 75 с решением

Кодирование длин серий (RLE) — это форма сжатия данных без потерь, при которой серии данных (последовательности, в которых встречается одно и то же значение данных) во многих последовательных элементах данных) хранятся как одно значение данных и счетчик, а не как исходный прогон.

Напишите программу Python для создания списка, отражающего кодировку длин серий из заданного списка целых чисел или заданного списка символов.

Пример решения :

Код Python:

  из itertools import groupbydef encode_list (s_list): return [[len (list (group)), key] для ключа, группа в groupby (s_list)] n_list = [  1,1,2,3,4,4,3,5, 1] ​​print ("Исходный список:") print (n_list) print (" nList, отражающий кодировку длин серий из указанного списка:") print (encode_list (  n_list)) n_list = 'автоматически' print (" nOriginal String:") print (n_list) print (" nList, отражающий кодировку длин серий из указанной строки:") print (encode_list (n_list)) e> 

Пример вывода:

 Исходный список: [1, 1, 2, 3, 4, 4.3, 5, 1] ​​Список, отражающий кодировку длин серий  из указанного списка: [[2, 1], [1, 2], [1, 3], [1, 4], [1, 4.3], [1, 5], [1, 1]] Исходная строка  : автоматически Список, отражающий кодировку длин серий из указанной строки: [[1, 'a'], [1, 'u'], [1, 't'], [1, 'o'], [1, '  m '], [1,' a '], [1,' t '], [1,' i '], [1,' c '], [1,' a '], [2,' l '  ], [1, 'y']] 

Блок-схема:

Визуализируйте выполнение кода Python:

Следующий инструмент визуализирует шаг за шагом, что делает компьютер, когда он выполняет указанную программу:

Редактор кода Python:

Оцените статью
nanomode.ru
Добавить комментарий