Python: ordenar por carácter posterior en la lista de strings

Dada una lista de strings, realice la ordenación por el carácter posterior en la lista de strings.

Entrada : test_list = [‘gfg’, ‘is’, ‘for’, ‘geeks’] 
Salida : [‘gfg’, ‘for’, ‘is’, ‘geeks’] 
Explicación : g < r < s = s, de ahí el orden.

Entrada : test_list = [‘gfz’, ‘is’, ‘for’, ‘geeks’] 
Salida : [‘for’, ‘is’, ‘geeks’, ‘gfz’] 
Explicación : r < s = s < z, de ahí el orden. 

Método #1: Usar sort()

En esto, realizamos la tarea de ordenar usando sort(), y la función externa se usa para la tarea de colocar el elemento trasero en la string.

Python3

# Python3 code to demonstrate working of
# Sort by Rear Character in Strings List
# Using sort()
 
# sort key function
def get_rear(sub):
    return sub[-1]
 
# initializing list
test_list = ['gfg', 'is', 'best', 'for', 'geeks']
 
# printing original list
print("The original list is : " + str(test_list))
 
# using sort with key fnc.
# performs inplace sort
test_list.sort(key = get_rear)
 
# printing result
print("Sorted List : " + str(test_list))
Producción

The original list is : ['gfg', 'is', 'best', 'for', 'geeks']
Sorted List : ['gfg', 'for', 'is', 'geeks', 'best']

Método #2: Usar sorted() + lambda

En esto, usamos sorted() para realizar la ordenación, explícita y usamos una función lambda para realizar la tarea de obtener el elemento trasero.

Python3

# Python3 code to demonstrate working of
# Sort by Rear Character in Strings List
# Using sorted() + lambda
 
# initializing list
test_list = ['gfg', 'is', 'best', 'for', 'geeks']
 
# printing original list
print("The original list is : " + str(test_list))
 
# lambda function for rear element
# performs non-inplace sort
res = sorted(test_list, key = lambda sub : sub[-1])
 
# printing result
print("Sorted List : " + str(res))
Producción

The original list is : ['gfg', 'is', 'best', 'for', 'geeks']
Sorted List : ['gfg', 'for', 'is', 'geeks', 'best']

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 *