Aggiungere condizioni
Fa parte della sezione Logica e flusso del percorso Python di Coddy. Lezione 52 di 78.
Le comprensioni di liste diventano ancora più potenti quando aggiungi una logica condizionale. Questo ti permette di creare nuove liste a partire da liste esistenti, filtrando e trasformando gli elementi in base a condizioni specificate.
La sintassi per aggiungere una condizione a una list comprehension è:
new_list = [expression for item in iterable if condition]Ecco una spiegazione della sintassi:
new_list: la nuova lista che verrà creata.
expression: Il valore da includere innew_list. Può essere una versione modificata diitem.
for item in iterable: un ciclo che itera su ogni elemento initerable(ad esempio, un elenco, una tupla o un intervallo).
item: L'elemento corrente in fase di elaborazione nel ciclo.
if condition: un filtro che determina se l’itemcorrente debba essere incluso innew_list. L’expressionviene valutata solo se laconditionèTrue.
Ecco un esempio:
numbers = [1, 2, 3, 4, 5, 6]
evens = [n for n in numbers if n % 2 == 0]
print(evens)
# Risultato: [2, 4, 6]In questo esempio, la comprensione di lista crea una nuova lista chiamata evens prendendo ogni elemento n dalla lista numbers e includendolo solo se è pari (cioè, n % 2 == 0).
Sfida
FacileCrea una funzione chiamata filter_and_square che accetta come argomento una lista di numeri numbers. La funzione dovrebbe usare una comprensione di lista per creare una nuova lista che includa i quadrati solo dei numeri positivi della lista originale. La funzione dovrebbe restituire la nuova lista.
Provalo tu
def filter_and_square(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