Python: elimina el sufijo de la lista de strings

A veces, mientras trabajamos con datos, podemos tener un problema en el que necesitamos filtrar la lista de strings de forma que se eliminen las strings que terminan con un sufijo específico. Analicemos ciertas formas en que se puede realizar esta tarea. 

Método n.º 1: usar bucle + eliminar() + termina con() La combinación de las funciones anteriores puede resolver este problema. En esto, eliminamos los elementos que terminan con un sufijo particular al que se accede mediante bucle y devolvemos la lista modificada. 

Python3

# Python3 code to demonstrate working of
# Suffix removal from String list
# using loop + remove() + endswith()
 
# initialize list
test_list = ['allx', 'lovex', 'gfg', 'xit', 'is', 'bestx']
 
# printing original list
print("The original list : " + str(test_list))
 
# initialize suffix
suff = 'x'
 
# Suffix removal from String list
# using loop + remove() + endswith()
for word in test_list[:]:
    if word.endswith(suff):
        test_list.remove(word)
 
# printing result
print("List after removal of suffix elements : " + str(test_list))

  Método n.° 2: Uso de la comprensión de listas + extremos con() Esta es otra forma en que se puede realizar esta tarea. En esto, no realizamos la eliminación en el lugar, sino que recreamos la lista sin los elementos que coinciden con el sufijo. 

Python3

# Python3 code to demonstrate working of
# Suffix removal from String list
# using list comprehension + endswith()
 
# initialize list
test_list = ['allx', 'lovex', 'gfg', 'xit', 'is', 'bestx']
 
# printing original list
print("The original list : " + str(test_list))
 
# initialize suff
suff = 'x'
 
# Suffix removal from String list
# using list comprehension + endswith()
res = [ele for ele in test_list if not ele.endswith(suff)]
 
# printing result
print("List after removal of suffix elements : " + str(res))

Método #3: Usando la función de filtro + termina con() Esta es otra forma en la que se puede realizar la tarea. En esto, podemos crear una nueva lista con la ayuda de la función de filtro que filtra toda la string que termina con el sufijo definido.

Python3

# Python3 code to demonstrate working of
# Remove prefix strings from list
# using filter + endswith()
 
# initialize suff
suff = 'x'
 
def eva(x):
    return not x.endswith(suff)
# initialize list
test_list = ['allx', 'lovex', 'gfg', 'xit', 'is', 'bestx']
 
# printing original list
print("The original list : " + str(test_list))
 
# Remove prefix strings from list
# using filter + endswith()
res = list(filter(eva, test_list))
 
# printing result
print("List after removal of Kth character of each string : " + str(res))
Producción

The original list : ['allx', 'lovex', 'gfg', 'xit', 'is', 'bestx']
List after removal of Kth character of each string : ['gfg', 'xit', 'is']

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 *