Ordina il Dizionario
Il tuo compito è scrivere una funzione chiamata
sort_dictionary
che sia in grado di ordinare un dizionario dato, sia per chiave che per valore.La funzione
sort_dictionary
accetta tre argomenti:dictionary
: un dizionario da ordinare. Le chiavi del dizionario sono stringhe, mentre i valori sono numeri.
by
: una stringa che indica se l'ordinamento deve essere effettuato per 'keys' o per 'values'.
reverse
: un argomento booleano (solo per parola chiave) che determina l'ordine di ordinamento. Sereverse
èFalse
, l'ordinamento avviene in ordine crescente. Sereverse
èTrue
, l'ordinamento avviene in ordine decrescente. Il valore predefinito direverse
deve essereFalse
.
La funzione dovrebbe restituire il dizionario ordinato come una lista di tuple. Ogni tupla deve contenere due elementi: la chiave e il corrispondente valore nel dizionario. Il formato della tupla dovrebbe essere:
(key, value)
.Nota che l'ordinamento deve essere case-insensitive.
Input | Output |
sort_dictionary({'Alice': 25, 'Bob': 22, 'Charlie': 27}, 'keys') | [('Alice', 25), ('Bob', 22), ('Charlie', 27)] |
sort_dictionary({'Alice': 25, 'Bob': 22, 'Charlie': 27}, 'values', reverse=True) | [('Charlie', 27), ('Alice', 25), ('Bob', 22)] |
sort_dictionary({'b': 1, 'A': 2, 'c': 3}, 'keys') | [('A', 2), ('b', 1), ('c', 3)] |
sort_dictionary({'b': 1, 'A': 2, 'c': 3}, 'values', reverse=True) | [('c', 3), ('A', 2), ('b', 1)] |
Constraints
Time limit: 1 seconds
Memory limit: 512 MB
Output limit: 1 MB