Python: extrae palabras que comienzan con K en la lista de strings

Dada la lista de frases, extraiga todas las Strings que comiencen con el carácter K.

Entrada : test_list = [“Gfg es bueno para aprender”, “Gfg es para geeks”, “Me encanta G4G”], K = l
Salida : [‘aprendizaje’, ‘amor’]
Explicación : Todos los elementos con L como letra inicial se extraen.

Entrada : test_list = [“Gfg es bueno para aprender”, “Gfg es para geeks”, “Me encanta G4G”], K = m
Salida : []
Explicación : Ninguna palabra comenzó con “m”, por lo tanto, no se extrajo ninguna palabra.

Método #1: Usar loop + split()

Esta es la forma bruta en la que se puede resolver este problema. En esto, convertimos cada frase en una lista de palabras y luego, para cada palabra, verificamos si su carácter inicial es K. 

Python3

# Python3 code to demonstrate working of 
# Extract words starting with K in String List
# Using loop + split()
  
# initializing list
test_list = ["Gfg is best", "Gfg is for geeks", "I love G4G"] 
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = "g"
  
res = []
for sub in test_list:
    # splitting phrases
    temp = sub.split()
    for ele in temp:
          
        # checking for matching elements
        if ele[0].lower() == K.lower():
            res.append(ele)
  
# printing result 
print("The filtered elements : " + str(res))
Producción

The original list is : ['Gfg is best', 'Gfg is for geeks', 'I love G4G']
The filtered elements : ['Gfg', 'Gfg', 'geeks', 'G4G']

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

Esta es otra forma más en la que se puede realizar esta tarea. En esto, ejecutamos bucles anidados dobles dentro de la comprensión de lista única y realizamos las comprobaciones condicionales requeridas.

Python3

# Python3 code to demonstrate working of 
# Extract words starting with K in String List
# Using list comprehension + split() 
  
# initializing list
test_list = ["Gfg is best", "Gfg is for geeks", "I love G4G"] 
  
# printing original list
print("The original list is : " + str(test_list))
  
# initializing K 
K = "g"
res = [ele for temp in test_list for ele in temp.split() if ele[0].lower() == K.lower()]
  
# printing result 
print("The filtered elements : " + str(res))
Producción

The original list is : ['Gfg is best', 'Gfg is for geeks', 'I love G4G']
The filtered elements : ['Gfg', 'Gfg', 'geeks', 'G4G']

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 *