Ejecutar longitud codificación Python
La pregunta es: escriba una función que tome, como argumento, una lista de caracteres y devuelva una lista que refleje la codificación de longitud de ejecución de esa lista. Los elementos en la lista devuelta siguen el siguiente patrón: los índices pares contienen los caracteres y los índices impares contienen el número de veces que el carácter se repite consecutivamente.
Cuando escribo una lista en la función, no itera a lo largo de toda la lista. Funcionará para listas de longitudes más cortas, pero no para las más largas. No estoy seguro de cómo solucionarlo.
def runLengthEncoding(myList):
aList=[]
count=1
for i in range(1,len(myList)):
if myList[i] == myList[i-1]:
count=count+1
else:
aList.append(myList[i-1])
aList.append(count)
count=1
if i == (len(myList)-1):
aList.append(myList[i])
aList.append(count)
return aList