Python: extraer índices de coincidencias de substrings

Dada una lista de strings y una substring, extraiga la lista de índices de strings en las que aparece esa substring.

Entrada : test_list = [“Gfg es bueno”, “para geeks”, “Me encanta Gfg”, “Gfg es útil”], K = “Gfg”
Salida : [0, 2, 3]
Explicación : “Gfg” está presente en 0, 2 y 3 elemento como substring.

Entrada : test_list = [“Gfg es bueno”, “para geeks”, “Me encanta Gfg”, “Gfg es útil”], K = “bueno”
Salida : [0]
Explicación : “bueno” está presente en la substring 0.

Método #2: Usar bucle + enumerar()

Esta es la forma bruta en la que se puede realizar esta tarea. En esto, iteramos todos los elementos junto con sus índices usando enumerate() y las declaraciones condicionales se usan para obtener el resultado requerido.

Python3

# Python3 code to demonstrate working of 
# Extract Indices of substring matches
# Using loop + enumerate()
  
# initializing list
test_list = ["Gfg is good", "for Geeks", "I love Gfg", "Its useful"]
  
# initializing K 
K = "Gfg"
  
# printing original list
print("The original list : " + str(test_list))
  
# using loop to iterate through list 
res = []
for idx, ele in enumerate(test_list):
  if K in ele:
    res.append(idx)
  
# printing result 
print("The indices list : " + str(res))
Producción

The original list : ['Gfg is good', 'for Geeks', 'I love Gfg', 'Its useful']
The indices list : [0, 2]

Método n. ° 2: usar la comprensión de listas + enumerar() 

Esta es otra forma más en la que esta tarea puede ser resuelta. En esto, realizamos una tarea similar al método anterior usando la comprensión de listas y enumerate() se usa para obtener una solución compacta.

Python3

# Python3 code to demonstrate working of 
# Extract Indices of substring matches
# Using list comprehension + enumerate()
  
# initializing list
test_list = ["Gfg is good", "for Geeks", "I love Gfg", "Its useful"]
  
# initializing K 
K = "Gfg"
  
# printing original list
print("The original list : " + str(test_list))
  
# using list comprehension and enumerate to offer compact solution
res = [idx for idx, val in enumerate(test_list) if K in val]
  
# printing result 
print("The indices list : " + str(res))
Producción

The original list : ['Gfg is good', 'for Geeks', 'I love Gfg', 'Its useful']
The indices list : [0, 2]

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 *