comprensione delle liste Python
Funzioni e metodi Python
Michael Zippo
31.10.2021
La comprensione di un elenco Python è un modo per creare un elenco basato su un elenco esistente. Le comprensioni di elenco vengono comunemente utilizzate per filtrare gli elementi da un elenco o per modificare i valori in un elenco esistente. Le comprensioni degli elenchi sono racchiuse tra parentesi quadre.
Quando lavori con gli elenchi, potresti voler creare un elenco basato sui contenuti di una sequenza esistente. Ad esempio, potresti voler creare un elenco basato su una sequenza di caratteri. Oppure potresti volere un elenco che moltiplichi il contenuto di un altro elenco per due.
Ecco dove entrano in gioco le comprensioni di elenco. Questo tutorial esplorerà, con esempi, le basi degli elenchi Python e come usa la comprensione delle liste.
Liste Python: un aggiornamento
La struttura dati della lista ti permette di memorizzare raccolte di elementi in Python. Gli elenchi vengono comunemente utilizzati quando si desidera lavorare con più valori correlati in qualche modo.
Ad esempio, è possibile utilizzare un elenco per memorizzare tutti i gusti di gelato venduti in una gelateria. Oppure potresti usare un elenco per memorizzare un elenco dei numeri di telefono dei membri di un wine club.
Ecco un esempio di elenco in Python:
Ora che abbiamo rivisto le basi delle liste, possiamo iniziare a parlare di come usare la comprensione delle liste.
Comprensione delle liste Python
Una comprensione dell’elenco Python crea un nuovo elenco dal contenuto di un altro elenco. è possibile utilizzare una comprensione dell’elenco per duplicare un elenco o per modificare il contenuto di un elenco esistente in un nuovo elenco. Oppure puoi trasferire il contenuto di un altro iterabile in un elenco con una comprensione dell’elenco.
L’81% dei partecipanti ha dichiarato di sentirsi più sicuro delle proprie prospettive di lavoro nel settore tecnologico dopo aver frequentato un bootcamp. Fatti abbinare a un bootcamp oggi.
Il laureato medio del bootcamp ha trascorso meno di sei mesi nella transizione di carriera, dall’inizio di un bootcamp alla ricerca del primo lavoro.
Puoi specificare i filtri in modo che il tuo nuovo elenco include solo determinati valori. Ad esempio, potresti creare un nuovo elenco da un elenco di numeri. Il tuo nuovo elenco può includere solo numeri maggiori di 250.
La sintassi per la comprensione di un elenco in Python è la seguente:
Questa sintassi è simile a un Python per dichiarazione. Ma la dichiarazione è su una riga. Per distinguere tra un’istruzione for, una comprensione di elenco è racchiusa tra parentesi quadre.
Ci sono tre parti nella sintassi precedente:
- espressione: il valore finale che va nel nuovo elenco.
- item: il singolo elemento nell’elenco su cui si esegue l’iterazione.
- list: l’elenco o l’oggetto iterabile attraverso il quale attraversa la comprensione dell’elenco (tipi di dati accettabili includi tuple, stringhe ed elenchi).
Puoi usare una comprensione di elenco con un’istruzione Python if‚Ķelse inside:
Questa comprensione aggiunge elementi all’elenco solo se soddisfano la condizione specificata.
L’uso delle comprensioni di elenco ti consente di creare un nuovo elenco da uno esistente senza definire per completo dichiarazioni. per stat Gli elementi occupano almeno due righe di codice, mentre puoi scrivere una comprensione di elenco su una riga.
Alcune persone dicono che le comprensioni di elenco sono più codice Python. Questo perché sono più efficienti rispetto all’utilizzo di una breve istruzione for.
Esempio di comprensione dell’elenco Python
Supponiamo di voler creare un elenco di tutti i polli pizze che vendiamo presso il nostro punto vendita. Sposteremo tutte le pizze di pollo in una categoria Pollo nel nostro menu. Per fare ciò, potremmo filtrare le nostre pizze utilizzando le istruzioni for. Oppure, potremmo filtrare la nostra lista usando una comprensione di lista.
Potremmo usare una comprensione di lista per generare una nuova lista di pizze i cui nomi contengono Pollo in base alla nostra lista di pizze esistente . Potremmo farlo usando questo codice:
Il nostro comprensione restituisce il seguente elenco di output:
Nel nostro codice, definiamo prima un elenco di pizze nel nostro menu. Le nostre pizze sono conservate nella variabile Python chiamata pizze. Quindi, utilizziamo una comprensione di elenco per creare una nuova lista di pizze i cui nomi contengono Pollo.
La nostra comprensione di elenco è composta dalle seguenti parti:
- p: questo è il valore da aggiungere alla nostra lista.
- per p nelle pizze: questo scorre in ogni pizza nel nostro " pizze" elenco.
- se "Pollo" in p: controlla se ogni pizza contiene "Pollo". Se restituisce True, il valore memorizzato in "p" viene aggiunto alla nostra lista.
La nostra comprensione delle liste ha richiesto solo una riga di codice, mentre nel nostro prossimo esempio, dobbiamo usare tre righe di codice con un’istruzione for per rendere funziona. Il nostro prossimo esempio mostra fino a che punto la comprensione delle liste aiuta a scrivere un codice più pulito.
Torniamo all’esempio della pizza al pollo. Senza usare un comprensione delle liste, se volessimo generare una lista di pizze al pollo nel nostro menu, useremmo questo codice:
Per prima cosa, definiamo due elenchi. Un elenco memorizza un elenco di pizze vendute presso il nostro punto vendita. L’altro elenco contiene un elenco di tutte le pizze di pollo che vendiamo. L’elenco delle pizze di pollo che vendiamo è inizialmente vuoto.
Utilizziamo un "for" dichiarazione per esaminare ogni pizza nel nostro elenco di pizze. Quindi, controlliamo se ogni pizza contiene la parola Pollo. Se una pizza contiene la parola Pollo, aggiungiamo quella pizza al nostro elenco di pizze di pollo. In questo caso, tre pizze contengono Pollo e tutte e tre queste pizze vengono aggiunte alla nostra lista di pizza_pollo.
"Il Karma di carriera è entrato nella mia vita quando Ne avevo più bisogno e mi ha aiutato rapidamente a partecipare a un bootcamp. Due mesi dopo la laurea, ho trovato il lavoro dei miei sogni in linea con i miei valori e obiettivi nella vita!"