Dada una String, nuestra tarea es escribir un programa en Python para extraer el índice de inicio y fin de todos los elementos de palabras de otra lista de una string.
Entrada: test_str = «gfg es mejor para todos los geeks de CS y buscadores de trabajo de ingeniería», check_list = [«geeks», «ingeniería», «mejor», «gfg»]
Salida: {‘geeks’: [23, 27], ‘ingeniería’: [33, 43], ‘mejor’: [7, 10], ‘gfg’: [0, 2]}
Explicación: «geeks» comienza desde el número de índice 23 hasta el 27, de ahí el resultado.
Entrada: test_str = «gfg es mejor para todos los geeks de CS y buscadores de trabajo de ingeniería», check_list = [«geeks», «gfg»]
Salida: {‘geeks’: [23, 27], ‘gfg’: [0, 2]}
Explicación: «geeks» comienza desde el número de índice 23 hasta el 27, de ahí el resultado.
Método #1: Usar loop + index() + len()
En esto, el bucle se usa para obtener cada elemento de la lista. index() obtiene el índice inicial y len() obtiene el último índice de todos los elementos de la lista en la string.
Python3
# Python3 code to demonstrate working of # Start and End Indices of words from list in String # Using loop + index() + len() # initializing string test_str = "gfg is best for all CS geeks and engineering job seekers" # printing original string print("The original string is : " + str(test_str)) # initializing check_list check_list = ["geeks", "engineering", "best", "gfg"] res = dict() for ele in check_list : if ele in test_str: # getting front index strt = test_str.index(ele) # getting ending index res[ele] = [strt, strt + len(ele) - 1] # printing result print("Required extracted indices : " + str(res))
Producción:
La string original es: gfg es mejor para todos los geeks de CS y buscadores de trabajo de ingeniería
Índices extraídos requeridos: {‘geeks’: [23, 27], ‘engineering’: [33, 43], ‘best’: [7, 10], ‘gfg’: [0, 2]}
Método #2: Usando la comprensión del diccionario + len() + index()
En esto, realizamos tareas similares a la función anterior, pero la construcción del diccionario de resultados se realiza usando taquigrafía usando comprensión de diccionario.
Python3
# Python3 code to demonstrate working of # Start and End Indices of words from list in String # Using dictionary comprehension + len() + index() # initializing string test_str = "gfg is best for all CS geeks and engineering job seekers" # printing original string print("The original string is : " + str(test_str)) # initializing check_list check_list = ["geeks", "engineering", "best", "gfg"] # Dictionary comprehension to be used as shorthand for # forming result Dictionary res = {key: [test_str.index(key), test_str.index(key) + len(key) - 1] for key in check_list if key in test_str} # printing result print("Required extracted indices : " + str(res))
Producción:
La string original es: gfg es mejor para todos los geeks de CS y buscadores de trabajo de ingeniería
Índices extraídos requeridos: {‘geeks’: [23, 27], ‘engineering’: [33, 43], ‘best’: [7, 10], ‘gfg’: [0, 2]}
La complejidad de tiempo y espacio para todos los métodos es la misma:
Complejidad de tiempo: O(n)
Espacio Auxiliar: O(n)
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