Python: presencia de substrings en la lista de strings

Dada la lista de substrings y la lista de strings, verifique cada substring, si están presentes en alguna de las strings en Lista.

Entrada : test_list1 = [“Gfg”, “is”, “best”], test_list2 = [“I love Gfg”, “Its Best for Geeks”, “Gfg significa CS”]
Salida : [Verdadero, Falso, Falso]
Explicación : Solo Gfg está presente como substring en cualquiera de las strings de la lista en la segunda lista.

Entrada : test_list1 = [“Gfg”, “is”, “best”], test_list2 = [“Me encanta Gfg”, “Es lo mejor para los geeks”, “Gfg significa CS”]
Salida : [Verdadero, Verdadero, Falso]
Explicación : solo Gfg y is están presentes como substring en cualquiera de las strings de la lista en la segunda lista.

Método #1: Usar bucle

Esta es la forma bruta en la que se puede realizar esta tarea. En esto, para cada elemento de la lista, verificamos si es una substring de cualquier otro elemento de la lista. 

Python3

# Python3 code to demonstrate working of 
# Substring presence in Strings List
# Using loop
  
# initializing lists
test_list1 = ["Gfg", "is", "Best"]
test_list2 = ["I love Gfg", "Its Best for Geeks", "Gfg means CS"]
  
# printing original lists
print("The original list 1 : " + str(test_list1))
print("The original list 2 : " + str(test_list2))
  
# using loop to iterate
res = []
for ele in test_list1 :
  temp = False
    
  # inner loop to check for
  # presence of element in any list
  for sub in test_list2 :
    if ele in sub:
      temp = True
      break    
  res.append(temp)
    
# printing result 
print("The match list : " + str(res))
Producción

The original list 1 : ['Gfg', 'is', 'Best']
The original list 2 : ['I love Gfg', 'Its Best for Geeks', 'Gfg means CS']
The match list : [True, False, True]

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

La combinación de las funciones anteriores se puede utilizar para resolver este problema. En esto, buscamos cualquier sublista usando any() y la comprensión de la lista se usa para realizar la iteración.

Python3

# Python3 code to demonstrate working of 
# Substring presence in Strings List
# Using list comprehension + any()
  
# initializing lists
test_list1 = ["Gfg", "is", "Best"]
test_list2 = ["I love Gfg", "Its Best for Geeks", "Gfg means CS"]
  
# printing original lists
print("The original list 1 : " + str(test_list1))
print("The original list 2 : " + str(test_list2))
  
# any() reduces a nesting
# checks for element presence in all Substrings
res = [True if any(i in j for j in test_list2) else False for i in test_list1]
  
# printing result 
print("The match list : " + str(res))
Producción

The original list 1 : ['Gfg', 'is', 'Best']
The original list 2 : ['I love Gfg', 'Its Best for Geeks', 'Gfg means CS']
The match list : [True, False, True]

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 *