Dada una lista de strings, realice la tarea de la concatenación de strings aumentando el tamaño de cada string.
Ejemplos:
Input : test_list = ['gfg', 'for', 'all', 'geeks'], Output : gfoallgeek Explanation : g, fo, all, geek -> concatenated from each string [ increasing order ].
Input : test_list = ['gfg', 'for', 'geeks'], Output : gfogee Explanation : g, fo, gee -> concatenated from each string [ increasing order ].
Método #1: Usar bucle + corte
En este, usando el bucle, cada string se itera y se concatena cortando aumentando el contador en cada paso.
Python3
# Python3 code to demonstrate working of # Incremental Slice concatenation in String list # Using loop + slicing # initializing list test_list = ['gfg', 'for', 'all', 'geeks'] # printing original list print("The original list is : " + str(test_list)) res = '' for idx in range(len(test_list)): # Incremental slicing res += test_list[idx][:idx + 1] # printing result print("Incremental sliced concatenated string : " + str(res))
Producción
The original list is : ['gfg', 'for', 'all', 'geeks'] Incremental sliced concatenated string : gfoallgeek
Método #2: Usando join() + comprensión de lista
En esto, la tarea de concatenación se realiza mediante join(), la tarea de iteración se realiza mediante comprensión de lista para proporcionar taquigrafía.
Python3
# Python3 code to demonstrate working of # Incremental Slice concatenation in String list # Using join() + list comprehension # initializing list test_list = ['gfg', 'for', 'all', 'geeks'] # printing original list print("The original list is : " + str(test_list)) # join performs concatenation res = ''.join([test_list[idx][:idx + 1] for idx in range(len(test_list))]) # printing result print("Incremental sliced concatenated string : " + str(res))
Producción
The original list is : ['gfg', 'for', 'all', 'geeks'] Incremental sliced concatenated string : gfoallgeek
Método #3: Usando reduce + List.index()
Esta es otra forma de realizar esta tarea. Podemos usar reduce para iterar sobre la lista y combinar la string de corte. Usamos List.index() para obtener el valor incremental que se usa en el corte de string.
Python3
# Python3 code to demonstrate working of # Incremental Slice concatenation in String list # Using reduce + List.index() import functools # initializing list lis = ['gfg', 'for', 'all', 'geeks'] # printing original list print("The original list is : " + str(lis)) # Using reduce and list.index function for # Incremental slice concatenate in string list ans = functools.reduce(lambda a, b: a+b[:lis.index(b)+1], lis, "") # printing result print("Incremental sliced concatenated string : " + ans)
Producción
The original list is : ['gfg', 'for', 'all', 'geeks'] Incremental sliced concatenated string : gfoallgeek
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