Une fonction d'ordre supérieur prend une fonction en argument ou en renvoie une. map, filter et sorted(key=...) en sont des exemples courants. Elle repose sur le fait que les fonctions sont des objets de première classe en Python.
Exemple
list(map(str.upper, ['a', 'b'])) # ['A', 'B']