Comprensione dell'elenco in Python (con esempi)

Pubblicato: 2021-08-22

Python è tra i linguaggi di programmazione più popolari al mondo. Nel 2020, si è classificato al secondo posto nella classifica di popolarità del linguaggio di programmazione di RedMonk . Il motivo alla base della sua diffusa popolarità è il codice e la semplicità di facile comprensione. Scrivere codice in Python è abbastanza semplice se hai familiarità con la sintassi. Uno dei suoi punti salienti unici è la sua funzione di comprensione dell'elenco. Puoi eseguire la comprensione Python per le liste scrivendo solo una riga di codice!

I seguenti punti illustreranno cos'è la comprensione dell'elenco e come è possibile utilizzarla in diverse impostazioni. Tratteremo anche le differenze presenti tra la comprensione dell'elenco e i cicli for, che possono creare molta confusione. Imparerai anche altre funzioni correlate e come usarle:

Sommario

Che cos'è la comprensione delle liste Python?

Python offre diversi modi per creare elenchi. Uno dei modi più efficaci tra loro è la funzione di comprensione dell'elenco. Ti permette di creare liste scrivendo una singola riga di codice.

Puoi usare la comprensione degli elenchi per creare nuovi elenchi da altri elementi iterabili come array, stringhe, tuple, elenchi, ecc. È composto da parentesi con l'espressione. Il sistema esegue l'espressione per ogni elemento con il ciclo for per scorrere ogni elemento.

La sintassi per la comprensione degli elenchi in Python è la seguente:

your_new_list = [espressione per l'elemento in your_old_list se condizione]

Qui, your_new_list è la nuova lista (o il risultato). L'espressione dipende dalla variabile che hai usato per ogni elemento nella tua_vecchia_lista. Infine, la "condizione se" è il filtro.

Ci sono molte ragioni per cui gli sviluppatori Python preferiscono la comprensione degli elenchi rispetto ai loop. Il motivo principale è l'efficienza. È possibile creare un elenco con molto meno sforzo e codice quando si utilizza la comprensione dell'elenco rispetto a quando si utilizzano i loop

Poiché richiede meno righe di codice rispetto ai cicli, la comprensione dell'elenco consente anche di risparmiare molto tempo. Mantiene il codice semplice e lo rende più intuitivo. Inoltre, la comprensione dell'elenco copre un'affermazione iterativa in una formula. Se vuoi acquisire più esperienza su Python, dai un'occhiata ai nostri programmi di scienza dei dati delle migliori università.

Elenca esempi di Python di comprensione

Stiamo condividendo diversi esempi di come è possibile utilizzare la comprensione degli elenchi in Python. Sarebbe meglio studiarli e replicarli nel tuo programma dopo aver capito come funzionano. Ti aiuterebbe a capire correttamente quanto sia veramente efficace la comprensione di un elenco di strumenti:

Esempio 1:

In questo esempio creeremo un semplice elenco usando la comprensione di Python:

Ingresso :

a = [i per i nell'intervallo(5)]

stampa a

Uscita :

[0, 1, 2, 3, 4]

Esempio 2:

Nell'esempio seguente, creeremo un elenco con multipli di due:

Ingresso :

new_list = [a*2 per a nell'intervallo(10)]

Produzione

[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

Esempio 3

Puoi moltiplicare ogni elemento in un elenco usando la comprensione dell'elenco:

Ingresso

vecchia_lista = [1, 2, 3]

nuova_lista = [elemento*2 per l'elemento nella vecchia_lista]

stampa nuova_lista

Produzione

[2, 4, 6]

Esempio 4

La comprensione dell'elenco non si limita ai soli numeri interi, puoi anche usarla con le stringhe. In questo esempio, useremo la comprensione dell'elenco per creare un elenco della prima lettera di ogni parola nel nostro elenco originale

Ingresso :

mia_lista = [“aggiornamento”, “è”, “divertente”]

risultato = [parola[0] per parola nella mia_lista]

risultato di stampa

Produzione

['u', 'io', 'f']

Esempio 5

Puoi anche estrarre numeri da una stringa usando la comprensione dell'elenco

Ingresso :

old_list = "upGrad 123 è divertente"

nuova_lista = [x per x nella stringa se x.isdigit()]

stampa nuova_lista

Uscita :

['1', '2', '3']

Esempio 6:

Puoi anche usare la comprensione degli elenchi con le funzioni, che sono una parte vitale delle implementazioni matematiche di Python:

Ingresso

# per prima cosa creeremo una funzione chiamata tripla

def triplo(x

ritorno x*3

# ora hai una funzione funzionante che stampa un risultato se inserisci un valore valido

>>> stampa triplo(2)

Uscita :

6

Ora puoi usare la comprensione degli elenchi con questa funzione per creare più elenchi

Ingresso :

>>> [tripla(x) per x nell'intervallo(5)]

stampa tripla

Uscita :

[0, 3, 6, 9, 12]

Differenza tra comprensione dell'elenco e ciclo for

Un modo comune per scorrere un elenco consiste nell'usare il ciclo for. Tuttavia, la comprensione dell'elenco è un metodo più efficiente per scorrere un elenco poiché consente di eseguire l'attività con meno righe di codice.

Ecco un esempio per illustrare la differenza. Inizieremo con un elenco vuoto e lo modificheremo per trasformarlo in un elenco di numeri pari:

Ingresso

# creazione della lista vuota

vecchia_lista = []

# usando il ciclo for per creare la nuova lista

per x nell'intervallo(5):

old_list.append(x*2)

stampa old_list

Uscita :

[0, 2, 4, 6, 8]

Come puoi vedere, il ciclo for richiede l'utilizzo della funzione append per creare il nuovo elenco. Dovevi anche creare prima un elenco vuoto in modo da poter utilizzare il ciclo per modificare lo stesso. Tuttavia, con la comprensione dell'elenco, non dovresti utilizzare un'altra funzione in quanto puoi completare l'attività con una singola riga di codice:

Ingresso :

# creare il set utilizzando la comprensione delle liste

old_list = [x*2 per x nell'intervallo(5)]

stampa old_list

Uscita :

[0, 2, 4, 6, 8]

Poiché la comprensione degli elenchi occupa meno spazio e codice, richiede anche meno potenza di calcolo rispetto all'utilizzo di un ciclo for. Ciò è vantaggioso quando si lavora su programmi di grandi dimensioni poiché l'efficienza diventa un problema chiave quando il codice è sostanzialmente lungo.

Tuttavia, quando utilizzi la comprensione degli elenchi, dovresti evitare di utilizzare quelli che sono eccessivamente lunghi in una riga. Altrimenti, il codice non rimarrebbe intuitivo e può essere piuttosto difficile condividere il tuo lavoro con altri sviluppatori. Tieni presente che riscrivi ogni comprensione di elenco in un ciclo for, ma non puoi riscrivere ogni ciclo for in una comprensione di elenco.

La comprensione delle liste è una delle tante funzionalità di comprensione di Python presenti in questo linguaggio di programmazione. Un'altra funzionalità di comprensione molto popolare è la comprensione del dizionario:

Che cos'è la comprensione del dizionario in Python?

La comprensione del dizionario, come suggerisce il nome, consente di creare dizionari in Python. La sintassi di una comprensione del dizionario è:

{k:v per (k,v) in iterabile}

Qui, k sta per chiave e v sta per valore.

Vediamolo all'opera. Nell'esempio seguente, creeremo due elenchi e utilizzeremo la comprensione del dizionario per generare un dizionario da essi:

Ingresso :

# usando Python per mostrare la comprensione del dizionario

# creando due liste per rappresentare chiavi e valori

chiavi = [1, 2, 3, 4, 5]

valori = ['a', 'b', 'c' 'd', 'e']

# implementare la comprensione del dizionario

new_dict = { k:v for (k,v) in zip(chiavi, valori)}

stampa new_dict

Uscita :

{1 : 'a', 2 : 'b', 3 : 'c', 4 : 'd'. 5 : 'e'}

La comprensione del dizionario rende abbastanza facile creare dizionari in Python. Tuttavia, puoi anche utilizzare la comprensione degli elenchi per generare un dizionario. Nell'esempio seguente, utilizzeremo la comprensione dell'elenco e creeremo un dizionario:

Ingresso :

new_dict = {x: x*2 per x in [5, 4, 3, 2, 1]}

stampa new_dict

Uscita :

{5 : 10, 4 : 8, 3 : 6, 2 : 4, 1 : 2}

Diventa un esperto di Python

La comprensione delle liste è una delle tante funzionalità presenti in Python. È un linguaggio di programmazione molto versatile e utile. Inoltre, anche la sintassi di Python è molto facile da capire e richiede un piccolo sforzo per abituarsi. Oltre a questi vantaggi, Python offre anche numerose librerie ai suoi utenti.

Ha una fiorente comunità di sviluppatori e programmatori che aggiungono regolarmente nuove librerie alla sua collezione. Le numerose librerie e funzioni disponibili per Python lo rendono utile in diversi settori come lo sviluppo software, la scienza dei dati, l'apprendimento automatico e altri.

Se sei interessato ad imparare Python, dovresti impararlo nel contesto del campo in cui vuoi entrare. Inoltre, i reclutatori cercano sempre professionisti certificati in questo campo perché assicurano loro l'esperienza del candidato.

Per questi motivi, sarebbe meglio iscriversi a un corso Python se sei interessato a intraprendere una carriera con questa abilità. L'International Institute of Information Technology Bangalore offre un programma Executive PG in Software Development con upGrad, perfetto per coloro che vogliono diventare esperti in questo linguaggio di programmazione e intraprendere una carriera tecnologica. Il corso ti fornirà un modo ben strutturato per studiare Python e altre tecnologie di tendenza per aiutarti a entrare nel settore come professionista pronto per il lavoro.

upGrad ha oltre 40.000 studenti pagati in oltre 85 paesi. L'adesione a questo programma ti consentirà anche di fare rete a livello internazionale attraverso la vasta base di studenti di upGrad. Il corso Executive PG Program in Software Development è un programma online che dura 13 mesi. Richiede solo un impegno di tempo di 15 ore settimanali.

Il programma offre sei specializzazioni tra cui scegliere

  • Sicurezza informatica
  • DevOps
  • Cloud computing
  • Grandi dati
  • Sviluppo blockchain
  • Sviluppo completo

Insieme a questi vantaggi, upGrad offre anche assistenza professionale a 360 gradi con questo programma in modo da poter iniziare facilmente la tua carriera. Puoi saperne di più sul corso qui: Programma Executive PG in Software Development .

Conclusione

All'inizio puoi provare la comprensione degli elenchi con elenchi semplici e poi passare ad applicazioni più complesse di questa funzionalità. La comprensione dell'elenco è un esempio di quanto sia flessibile e robusta la programmazione Python.

Cosa ne pensi della comprensione delle liste? Come lo useresti nel tuo programma?

Cosa fa la comprensione degli elenchi in Python?

Comprensione degli elenchi Python consente di creare elenchi in modo efficiente e utilizzando solo una singola riga di codice. È una delle funzionalità più robuste in Python.

Che cos'è la comprensione del dizionario?

La comprensione del dizionario consente di creare dizionari per due elenchi. Utilizza chiavi e valori per creare il dizionario richiesto.

La comprensione dell'elenco è migliore del ciclo for?

Sì, nella maggior parte dei casi, la comprensione degli elenchi è un modo molto migliore per creare elenchi. Richiede meno codice, tempo e potenza di calcolo rispetto ai cicli for per generare elenchi.