El módulo operator expone operaciones comunes como funciones. itemgetter lee índices o claves; attrgetter recorre atributos, incluso rutas como cliente.nombre. Son útiles con sorted, min, max, map y agrupaciones.

from operator import attrgetter, itemgetter

rows = [("Ana", 91), ("Beto", 84), ("Caio", 96)]
ranking = sorted(rows, key=itemgetter(1), reverse=True)

class User:
    def __init__(self, name: str) -> None:
        self.name = name

names = list(map(attrgetter("name"), [User("Ana"), User("Beto")]))

Cómo usarlo con seguridad

Elige itemgetter para secuencias y mappings, y attrgetter para objetos. Una lambda es más clara cuando la regla transforma, aporta un valor por defecto o valida. No ocultes accesos que pueden fallar: documenta las claves y atributos requeridos.

Para reforzar la base, consulta guía de collections en Python y guía de type hints.

La documentación oficial de Python, consultada el 22 de julio de 2026, describe la API, los casos límite y la compatibilidad entre versiones.