Usare l'aggregazione dei dati
Fa parte della sezione Logica e flusso del percorso Python di Coddy. Lezione 53 di 78.
Le list comprehension offrono un modo conciso per creare nuove liste basate su iterabili esistenti. Puoi integrare funzioni di aggregazione dei dati come sum(), min() e max() direttamente nelle list comprehension per eseguire calcoli sugli elementi della nuova lista mentre viene creata.
Calcolare la somma dei quadrati:
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
print(sum_of_squares)
# Output: 55In questo esempio, la comprensione di lista [n * n for n in numbers] crea una lista di quadrati e la funzione sum() calcola la somma di questi quadrati.
Trovare il minimo dei valori trasformati:
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
print(min_absolute)
# Output: 0Qui, la list comprehension [abs(n) for n in numbers] crea una lista di valori assoluti, e la funzione min() trova il valore minimo in questa lista.
Trovare il massimo dei valori filtrati:
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
print(max_even)
# Risultato: 6In questo esempio, la comprensione di lista [n for n in numbers if n % 2 == 0] crea una lista di numeri pari e la funzione max() trova il valore massimo in questa lista.
Sfida
FacileScrivi una funzione sum_positive_evens che accetta in input una lista di numeri. Usa una comprensione di lista per filtrare i numeri pari positivi, poi usa sum() per calcolarne il totale. Restituisci il risultato.
Esempio di input:
numbers = [-10, -5, 0, 2, 4, 7, 10, 12]Esempio di output:
28Provalo tu
def sum_positive_evens(numbers):
# Scrivi il codice quiQuesta lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Logica e flusso
1Esplorazione delle variabili
CostantiAssegnazioni multiple di variabiliScambio di variabiliVariabili segnapostoArrotondare i numeriConversione di liste4Applicazione Rubrica
Visualizzare il menuAggiungere un contatto7Insiemi Parte 2
Operazioni matematiche Parte 1Operazioni matematiche Parte 2Riepilogo - Caccia al tesoroSottoinsiemi e sovrainsiemiIterare sugli insiemiRiepilogo - Tracciamento del torneo10Comprensioni di liste di base
La sintassiCreare liste sempliciAggiungere condizioniUsare l'aggregazione dei datiRipasso - La casa delle listeRipasso - Elementi di libertà13Sistema di gestione dell'inventario
Panoramica del progettoAggiungi articolo2Dizionari Parte 1
Che cos'è un dizionario?Creare un dizionarioAccedere ai valoriModificare i dizionariRipasso - Gestore di ricette5Decisioni avanzate
Operatore ternarioVerifiche di appartenenzaVerifiche di identitàErrori di indentazioneRiepilogo - Filtro vacanze8Gestore delle carriere degli studenti
Panoramica del progettoAggiungi studente11Funzioni avanzate
Restituire più valoriFunzioni lambda - Parte 1Funzioni lambda - Parte 2Sfida di ripasso - Ordinamento con lambdaFunzioni ricorsive - Parte 1Funzioni ricorsive - Parte 2Ripasso - Somma di una lista annidata14Funzioni di ordine superiore
La funzione mapLa funzione filterRipasso - Validatore di emailRipasso - Elaboratore di numeri3Dizionari Parte 2
Metodi dei dizionariDizionari annidatiVerificare la presenza di chiaviIterare sui dizionariRipasso - Contatore di frequenza6Insiemi Parte 1
Che cos'è un insieme?Operazioni di baseMetodi degli insiemiRiepilogo - Rimuovere i duplicati9Aggregazione avanzata dei dati
Usare la sommaTrovare il minimo e il massimoOrdinare i dati in modo efficienteRipasso - Ordinatore di dizionari12Gestione di base degli errori
Che cos'è la gestione degli errori?Il blocco try ed exceptGestire più eccezioniRiepilogo - Errori nel carrelloEsercitati da solo: Compilatore Python online