single
Fondamenti di Sorted
Scorri per mostrare il menu
L'ordinamento dei dati è un'operazione comune quando si lavora con le liste in Python. La funzione sorted è una funzione built-in di ordine superiore che consente di ordinare qualsiasi iterabile e restituisce una nuova lista ordinata, lasciando i dati originali invariati. È possibile utilizzare sorted con o senza una logica di ordinamento personalizzata. Per impostazione predefinita, sorted dispone gli elementi in ordine crescente, ma è possibile controllare l'ordine e i criteri di ordinamento utilizzando i suoi parametri opzionali.
I parametri più importanti per sorted sono:
iterable: i dati che si desidera ordinare;key: una funzione opzionale che determina il valore su cui ordinare per ciascun elemento;reverse: un valore booleano che, se impostato suTrue, ordina i dati in ordine decrescente.
Supponiamo di avere una lista di numeri e di volerli ordinare in ordine crescente. È sufficiente chiamare sorted(numbers). Se si desidera ordinare i numeri in ordine decrescente, è possibile passare reverse=True.
12345numbers = [9, 5, 2, 1] # Sorting in reverse order sorted_desc = sorted(numbers, reverse=True) print(sorted_desc)
È inoltre possibile utilizzare il parametro key per ordinare strutture dati più complesse, come liste di tuple o dizionari, specificando una funzione che estrae il valore di confronto da ciascun elemento.
12345words = ["apple", "kiwi", "banana"] # Sorting by the length of each string sorted_words = sorted(words, key=len) print(sorted_words)
È possibile passare qualsiasi funzione al parametro key, inclusa una funzione lambda o una funzione definita precedentemente. Questo rende sorted una funzione di ordine superiore, poiché accetta un'altra funzione come argomento. L'ordinamento non è limitato a numeri o stringhe; è possibile ordinare oggetti complessi purché si fornisca una funzione key adeguata.
L'iterabile originale non viene modificato da sorted, che restituisce sempre una nuova lista. Se si desidera ordinare una lista in loco, utilizzare invece il metodo list.sort().
Scorri per iniziare a programmare
Ordinare una lista di tuple in base al secondo elemento di ciascuna tupla utilizzando la funzione sorted e una funzione nominata come parametro key.
- È fornita una lista chiamata
pairscontenente tuple di due interi. - Definire una funzione chiamata
get_second_elementche prende una tupla e restituisce il suo secondo valore. - Utilizzare la funzione
sortede passareget_second_elementcome parametrokeyper ordinarepairsin base al secondo valore di ciascuna tupla. - Salvare il risultato in una variabile chiamata
sorted_pairs. - Ricordarsi di rimuovere
pass.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione