A veces, mientras trabajamos con Python, podemos tener un problema en el que tenemos una string y deseamos extraer todas las combinaciones posibles de palabras después de eliminar los elementos consecutivos uno a la vez. Esto puede tener aplicación en muchos dominios. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: Uso de la comprensión de listas + división de listas
Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos por los elementos de la lista y seguimos creando una nueva string usando el corte de lista consecutivo.
# Python3 code to demonstrate working of # Consecutive element deletion strings # Using list comprehension + list slicing # initializing string test_str = 'Geeks4Geeks' # printing original string print("The original string is : " + str(test_str)) # Consecutive element deletion strings # Using list comprehension + list slicing res = [test_str[: idx] + test_str[idx + 1:] for idx in range(len(test_str))] # printing result print("Consecutive Elements removal list : " + str(res))
La string original es: Geeks4Geeks
Lista de eliminación de elementos consecutivos: [‘eeks4Geeks’, ‘Geks4Geeks’, ‘Geks4Geeks’, ‘Gees4Geeks’, ‘Geek4Geeks’, ‘GeeksGeeks’, ‘Geeks4eeks’, ‘Geeks4Geks’, ‘Geeks4Geeks’, ‘Geeks4Geeks’, ‘Geeks4Geeks’ ‘, ‘Geeks4Geek’]
Método n.° 2: usar la comprensión de listas +enumerate()
La combinación de los métodos anteriores se puede usar para realizar esta tarea. En esto, extraemos el índice usando enumerate. Esto da un código más limpio.
# Python3 code to demonstrate working of # Consecutive element deletion strings # Using list comprehension + enumerate() # initializing string test_str = 'Geeks4Geeks' # printing original string print("The original string is : " + str(test_str)) # Consecutive element deletion strings # Using list comprehension + enumerate() res = [test_str[:idx] + test_str[idx + 1:] for idx, _ in enumerate(test_str)] # printing result print("Consecutive Elements removal list : " + str(res))
La string original es: Geeks4Geeks
Lista de eliminación de elementos consecutivos: [‘eeks4Geeks’, ‘Geks4Geeks’, ‘Geks4Geeks’, ‘Gees4Geeks’, ‘Geek4Geeks’, ‘GeeksGeeks’, ‘Geeks4eeks’, ‘Geeks4Geks’, ‘Geeks4Geeks’, ‘Geeks4Geeks’, ‘Geeks4Geeks’ ‘, ‘Geeks4Geek’]
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