Python: ordinare una lista di dizionari

In questo articolo vedremo come ordinare una lista di dizionari in Python.

Possiamo sfruttare la funzione sorted() e il suo parametro key. Questo parametro ci permette di definire una funzione che servirà a specificare la chiave del dizionario corrente da usare nella comparazione.

Supponiamo di avere questa lista di dizionari.

users = [
    {'name': 'John', 'age': 22},
    {'name': 'James', 'age': 18},
    {'name': 'Jay', 'age': 20}
]

Vogliamo usare la chiave age per la comparazione. Possiamo usare una funzione lambda in sorted nel modo seguente:

sorted_users = sorted(users, key=lambda user: user.get('age'))

print(sorted_users)

Otterremo:

[{'name': 'James', 'age': 18}, {'name': 'Jay', 'age': 20}, {'name': 'John', 'age': 22}]
Torna su