Programa de Python para eliminar todos los elementos de una lista de strings excepto una letra específica

Dada una lista que contiene solo elementos de string, el siguiente programa muestra métodos de cómo se pueden eliminar todos los demás alfabetos de los elementos, excepto uno específico, y luego devuelve el resultado.

Entrada : test_list = [“google”, “es”, “bueno”, “goggled”, “dios”], K = ‘g’ 
Salida : [‘gg’, ”, ‘g’, ‘ggg’, ‘g ‘] 
Explicación : se eliminaron todos los caracteres que no sean «g».
Entrada : test_list = [“google”, “is”, “good”, “goggled”, “god”], K = ‘o’ 
Salida : [‘oo’, ”, ‘oo’, ‘o’, ‘o ‘] 
Explicación : Todos los caracteres que no sean «o» eliminados. 

Método 1: Usar bucle

En esto, rehacemos la string, agregando solo K y evitando todas las demás strings del resultado.

Python3

# initializing list
test_list = ["google", "is", "good", "goggled", "god"]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing K
K = 'g'
 
res = []
for sub in test_list:
 
    # joining only K characters
    res.append(''.join([ele for ele in sub if ele == K]))
 
# printing result
print("Modified List : " + str(res))

Producción:

La lista original es: [‘google’, ‘is’, ‘good’, ‘goggled’, ‘god’]

Lista modificada: [‘gg’, ”, ‘g’, ‘ggg’, ‘g’]

Método 2: usar la comprensión de listas y unirse()

En esto, realizamos la tarea de recrear la lista usando la comprensión de la lista y luego join() puede concatenar todas las apariciones de K.

Python3

# initializing list
test_list = ["google", "is", "good", "goggled", "god"]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing K
K = 'g'
 
# appending and joining using list comprehension and join()
res = [''.join([ele for ele in sub if ele == K]) for sub in test_list]
 
# printing result
print("Modified List : " + str(res))

 Producción:

La lista original es: [‘google’, ‘is’, ‘good’, ‘goggled’, ‘god’]

Lista modificada: [‘gg’, ”, ‘g’, ‘ggg’, ‘g’]

Método 3: Usando el método count() .

Itere sobre la lista dada de strings y encuentre el conteo del carácter dado en cada string y agréguelo a la lista de salida.

Python3

# initializing list
test_list = ["google", "is", "good", "goggled", "god"]
 
# printing original list
print("The original list is : " + str(test_list))
 
# initializing K
K = 'g'
 
res = []
for i in test_list:
    res.append(K*i.count(K))
# printing result
print("Modified List : " + str(res))
Producción

The original list is : ['google', 'is', 'good', 'goggled', 'god']
Modified List : ['gg', 'g', 'ggg', 'g']

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 *