typestar

Ordenar con una clave en Python

Una pasada, una función clave, y un orden estable en el que puedes confiar.

pasos = [("traits", 3, 15), ("basics", 1, 39), ("errors", 3, 15)]

print(sorted(pasos, key=lambda s: s[0]))
print(sorted(pasos, key=lambda s: (-s[1], s[0])))
print(sorted(pasos, key=len, reverse=True)[0])

palabras = ["Bravo", "alfa", "Carlos"]
print(sorted(palabras), sorted(palabras, key=str.lower))

Cómo funciona

  1. key se llama una vez por elemento, no por comparación.
  2. Una clave de tupla ordena por varios campos a la vez.
  3. El orden es estable: un orden anterior sobrevive al siguiente.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
8
Caracteres a escribir
301
Tokens
126
Ritmo de tres estrellas
95 tpm

Al ritmo de tres estrellas de 95 tokens por minuto, este intento toma unos 80 segundos.

Escribe este fragmento

Paso 3 de 3 en Conjuntos y mapeos; paso 58 de 72 en Fundamentos del lenguaje.

← Anterior Siguiente →