Python: los elementos K consecutivos se unen en la lista

A veces, mientras trabajamos con listas de Python, podemos tener un problema en el que necesitamos unir cada K caracteres en una colección. Este tipo de aplicación puede tener un caso de uso en muchos dominios, como la programación diaria y competitiva. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: Uso de la comprensión de listas
Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos a través de la lista y unimos elementos usando el corte de lista y devolvemos la lista agregada.

# Python3 code to demonstrate 
# Consecutive K elements join in List
# using List comprehension
  
# Initializing list
test_list = ['g', 'f', 'g', 'i', 's', 'b', 'e', 's', 't']
  
# printing original list
print("The original list is : " + str(test_list))
  
# Initializing K 
K = 3
  
# Consecutive K elements join in List
# using List comprehension
res = [ "".join(test_list[idx : idx + K]) for idx in range(len(test_list) - K + 1) ]
              
# printing result 
print ("List after consecutive joining : " + str(res))
Producción :

La lista original es: [‘g’, ‘f’, ‘g’, ‘i’, ‘s’, ‘b’, ‘e’, ​​’s’, ‘t’]
Lista después de la unión consecutiva: [‘gfg ‘, ‘fgi’, ‘gis’, ‘isb’, ‘sbe’, ‘bes’, ‘est’]

Método n.º 2: Uso del bucle
Esta es una forma bruta de realizar esta tarea. Esto es similar al método anterior, solo la string se itera usando un bucle y haciendo que la tarea sea más larga y tediosa.

# Python3 code to demonstrate 
# Consecutive K elements join in List
# using loop
  
# Initializing list
test_list = ['g', 'f', 'g', 'i', 's', 'b', 'e', 's', 't']
  
# printing original list
print("The original list is : " + str(test_list))
  
# Initializing K 
K = 3
  
# Consecutive K elements join in List
# using loop
res = []
for idx in range(0, len(test_list) - K + 1):
    res.append("".join(test_list[idx : idx + K]))
              
# printing result 
print ("List after consecutive joining : " + str(res))
Producción :

La lista original es: [‘g’, ‘f’, ‘g’, ‘i’, ‘s’, ‘b’, ‘e’, ​​’s’, ‘t’]
Lista después de la unión consecutiva: [‘gfg ‘, ‘fgi’, ‘gis’, ‘isb’, ‘sbe’, ‘bes’, ‘est’]

Publicación traducida automáticamente

Artículo escrito por manjeet_04 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 *