A veces, durante la programación, podemos enfrentar un problema en el que necesitamos realizar una concatenación de elementos de diferencia K. Este problema puede ocurrir en momentos de programación escolar o programación competitiva. Analicemos ciertas formas en que se puede resolver este problema.
Método n.º 1: usar la comprensión de listas + lazip()
combinación de las funcionalidades anteriores se puede usar para resolver este problema. En esto, iteramos la lista usando comprensión de lista y formación de pares usando zip().
# Python3 code to demonstrate working of # K difference index pairing in list # using list comprehension + zip() # initialize list test_list = ["G", "F", "G", "I", "S", "B", "E", "S", "T"] # printing original list print("The original list : " + str(test_list)) # initialize K K = 3 # K difference index pairing in list # using list comprehension + zip() res = [i + j for i, j in zip(test_list, test_list[K :])] # printing result print("List after K difference concatenation is : " + str(res))
The original list : ['G', 'F', 'G', 'I', 'S', 'B', 'E', 'S', 'T'] List after K difference concatenation is : ['GI', 'FS', 'GB', 'IE', 'SS', 'BT']
Método #2: Usarmap() + concat()
la combinación de estas funciones también puede realizar esta tarea. En esta lógica transversal se realiza map() y concat realiza la tarea de emparejamiento. Es más eficiente que el método anterior.
# Python3 code to demonstrate working of # K difference index pairing in list # using map() + concat import operator # initialize list test_list = ["G", "F", "G", "I", "S", "B", "E", "S", "T"] # printing original list print("The original list : " + str(test_list)) # initialize K K = 3 # K difference index pairing in list # using map() + concat res = list(map(operator.concat, test_list[:-1], test_list[K:])) # printing result print("List after K difference concatenation is : " + str(res))
The original list : ['G', 'F', 'G', 'I', 'S', 'B', 'E', 'S', 'T'] List after K difference concatenation is : ['GI', 'FS', 'GB', 'IE', 'SS', 'BT']
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