Python | Dividir lista en grupos desiguales

A veces, mientras trabajamos con python, podemos tener el problema de dividir una lista. Este problema es bastante común y tiene muchas variaciones. Tener soluciones a las variaciones populares demuestra ser bueno a largo plazo. Analicemos cierta forma de dividir la lista en grupos desiguales según lo definido por otra lista.

Método: Usar itertools.islice()+ comprensión de lista
La combinación de las funcionalidades anteriores se puede usar para realizar esta tarea. En esto, islice()se utiliza para realizar la tarea central de dividir la lista y la comprensión de la lista se utiliza para realizar la tarea de vincular la lógica y las iteraciones. El contenedor se convierte en iterador para una iteración más rápida.

# Python3 code to demonstrate working of
# Split list in uneven groups
# using itertools.islice() + list comprehension
from itertools import islice
  
# initialize list
test_list = [1, 4, 5, 7, 6, 5, 4, 2, 10]
  
# initialize split list
split_list = [3, 4, 2]
  
# printing original list
print("The original list is : " + str(test_list))
  
# printing split list 
print("The split list is : " + str(split_list))
  
# Split list in uneven groups
# using itertools.islice() + list comprehension
temp = iter(test_list)
res = [list(islice(temp, 0, ele)) for ele in split_list]
  
# printing result
print("The resultant split list is : " + str(res))
Producción :

The original list is : [1, 4, 5, 7, 6, 5, 4, 2, 10]
The split list is : [3, 4, 2]
The resultant split list is : [[1, 4, 5], [7, 6, 5, 4], [2, 10]]

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *