Python | String de clasificación inversa

A veces, mientras participamos en una prueba de programación competitiva, podemos encontrarnos con un problema en el que necesitamos clasificar un par en órdenes opuestos por índices. Este artículo en particular se enfoca en resolver un problema en el que requerimos ordenar el número en orden descendente y luego la String en orden creciente. Este es el tipo de problema que es común en la clasificación de pares. Vamos a discutir una forma en que esto puede ser resuelto.

Método: Usar sorted()+ lambda
La combinación de estas funciones se puede usar para realizar esta tarea. En estos, pasamos a la función lambda el negativo de los valores para que el orden creciente del número se evalúe como decreciente y, por lo tanto, un truco exitoso para realizar esta tarea.

# Python3 code to demonstrate working of
# Inverse sorting String, Integer tuple list
# Using sorted() + lambda
  
# initializing list
test_list = [("Geeks", 5), ("For", 3), ("Geeks", 6), ("Is", 5), 
             ("Best", 7 ), ("For", 5), ("CS", 3)]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Inverse sorting String, Integer tuple list
# Using sorted() + lambda
res = sorted(test_list, key = lambda sub: (-sub[1], sub[0]))
  
# printing result 
print("The list after inverse sorted tuple elements : " + str(res))
Producción :

La lista original es: [(‘Geeks’, 5), (‘For’, 3), (‘Geeks’, 6), (‘Is’, 5), (‘Best’, 7), (‘For’ , 5), (‘CS’, 3)]
La lista después de elementos de tupla ordenados inversamente: [(‘Best’, 7), (‘Geeks’, 6), (‘For’, 5), (‘Geeks’, 5), (‘Es’, 5), (‘CS’, 3), (‘Para’, 3)]

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 *