Programmazione

Tutto sulle liste Python

Tutto sulle liste Python

Python ha molti tipi di dati come integer, float, string, list, tuple, ecc. In questo tutorial, impareremo a conoscere il tipo di dati dell'elenco. Gli elenchi sono uno dei tipi di dati più utilizzati di Python e possono essere utilizzati per molte operazioni. 

Per seguire questo tutorial, si consiglia di avere l'ultima versione di Python installata nel sistema. Puoi seguire la nostra guida sull'installazione dell'ultima versione di Python. La maggior parte del codice in questo tutorial può essere eseguito nella shell python, ma si consiglia di disporre di un IDE per scrivere codice python. Puoi controllare il nostro confronto sui primi 10 IDE per la scrittura del codice.

Introduzione alle liste Python

Gli elenchi Python sono raccolte di oggetti arbitrari separati da virgole tra parentesi quadre come gli array in C++, javascript e molti altri linguaggi di programmazione. Ma la differenza è che l'elenco Python può contenere diversi tipi di dati sullo stesso elenco. 

Esempio:

>>> lista1 = [1, 2, 3, 4]
>>> lista2 = ["ciao", "questo", "è", "a", "lista"]
>>> lista3 = ["ciao", 100, "volte"]
>>> lista1
[1, 2, 3, 4]
>>> lista2
['ciao', 'questo', 'è', 'a', 'lista']
>>> lista3
['ciao', 100, 'volte']

Abbiamo creato tre liste, vale a dire. lista1, lista2 e lista3. L'elenco1 contiene tutti i suoi elementi del tipo di dati intero, l'elenco2 due contiene tutti gli elementi del tipo di dati stringa, mentre l'elenco3 contiene sia il tipo di dati intero che stringa.

Le liste Python sono ordinate

Gli elenchi Python sono ordinati, il che significa che dobbiamo guardare l'ordine durante la creazione degli elenchi perché due elenchi con gli stessi elementi ma ordini diversi verranno trattati in modo diverso dall'interprete Python.

Esempio:

>>> lista1 = [1, 2, 3, 4]
>>> lista2 = [4, 3, 2, 1]
>>> lista3 = [1, 2, 3, 4]
>>> lista1 == lista2
falso
>>> lista1 == lista3
Vero

Possiamo vedere dal codice che lista1 e lista2, che contiene gli stessi elementi in ordini diversi, non sono uguali per python come verificato dall'operatore ==(uguale).

Accesso agli elementi delle liste

Possiamo accedere agli elementi presenti in un elenco in molti modi.

Indicizzazione

Possiamo usare l'indicizzazione per accedere a un elemento da una lista. In Python, l'indicizzazione inizia da 0, quindi è possibile accedere al primo elemento dando l'indice 0. Possiamo dare l'indice nella lista python dando il numero di indice tra parentesi quadre[ ] alla fine del nome della variabile della lista. 

Esempio:

>>> lista1 = ["ciao", "questo", "è", "a", "lista"]
>>> lista1[0]
'Ciao'
>>> lista1[2]
'è'
>>> lista1[4]
'elenco'

L'indicizzazione Python inizia da 0, quindi dai index come 0 per accedere al primo elemento, 1 per accedere al secondo elemento.

Per accedere all'elemento fornendo il numero di indice di un elemento che non è presente, Python genererà un errore di indice.

>>> list1[5]Traceback (ultima chiamata più recente):
File "", riga 1, in
IndexError: elenca l'indice fuori intervallo
>>>

Nel codice, ho assegnato il numero di indice 5 alla lista list1, che è fuori intervallo poiché list1 contiene solo cinque elementi con numero di indice da 0 a 4, quindi otteniamo un errore di indice.

Indicizzazione negativa

Python supporta anche l'indicizzazione negativa. Questo significa che abbiamo un numero negativo come indice. Usandolo, possiamo accedere agli elementi dall'ultimo utilizzo. L'indice -1 indica l'ultimo elemento. Il numero indice -2 indica il penultimo elemento e così via. 

Esempio:

>>> lista1 = ["ciao", "questo", "è", "a", "lista"]
>>> lista1[-1]
'elenco'
>>> lista1[-2]
'un'
>>> lista1[-4]
'Questo'
>>> lista1[-5]
'Ciao'

Nel codice, è molto facile accedere agli elementi della lista dall'ultimo. Questo è utile per elenchi lunghi di cui non conosciamo il numero di elementi.

Affettare

Usando l'indicizzazione, possiamo accedere a un solo elemento contemporaneamente, ma a volte abbiamo bisogno di una parte dell'elenco o di un elenco figlio. Questo può essere fatto usando l'operatore di affettatura. Dobbiamo passare due numeri di indice nella parentesi quadra separati da un punto e virgola per eseguire l'affettatura. Il primo numero indice è il primo elemento dell'elenco figlio e il secondo numero indice è l'ultimo elemento dell'elenco figlio a cui vogliamo accedere. 

Esempio:

# creazione delle liste
lista1 = [101, 200, 113, 194, 999]
print(lista1[0:3])
print(lista1[1:])
print(lista1[1:4])
print(lista1[:])

Produzione:

taglio di corde

Modifica dei valori delle liste

Possiamo facilmente modificare i valori di una lista usando l'indicizzazione, che abbiamo imparato negli argomenti precedenti.

Ad esempio: supponiamo di aver creato un elenco con i seguenti dati.

>>> anno = [2016, 2017, 2018, 2019, 2021]
>>> anno
[2016, 2017, 2018, 2019, 2021]

Vogliamo cambiare l'anno 2021 al 2020; possiamo farlo usando il seguente codice. Abbiamo usato l'indicizzazione e l'operatore di assegnazione per modificare il valore dell'elemento con numero di indice 4, i.e., il quinto elemento.

>>> anno[4]= 2020
>>> anno
[2016, 2017, 2018, 2019, 2020]

Dal codice è cambiato il valore dal 2021 al 2020 della variabile di lista denominata anno.

Aggiunta di elementi alle liste

Possiamo aggiungere elementi a un elenco in molti modi. Alcune delle tecniche popolari sono discusse di seguito.

Usando il metodo append()

La funzione append() è una funzione incorporata di python, che può aggiungere un elemento alla fine dell'elenco. Possiamo anche passare una lista a una lista usando la funzione append(). 

Esempio:

# ha creato una lista di frutti
frutti = ["mela", "mango", "banana"]
stampa (frutta)
# aggiungendo kiwi ai frutti
frutta.append("kiwi")
stampa (frutta)
# aggiungere l'uva ai frutti
frutta.append("uva")
stampa (frutta)

Produzione:

funzione append()

Possiamo vedere che i valori sono stati aggiunti all'elenco, ma possiamo aggiungere solo un elemento all'elenco utilizzando questo metodo. Per aggiungere più elementi alla fine dell'elenco, dobbiamo usare il estendere funzione.

Usando il metodo extend()

Questo metodo è simile al metodo append(); l'unica differenza è che possiamo aggiungere più elementi contemporaneamente nell'elenco usando questo metodo. 

Esempio:

# ha creato una lista di frutti
frutti = ["mela", "mango", "banana"]
stampa (frutta)
# aggiungendo sia kiwi che uva contemporaneamente ai frutti
frutta.extend(["uva", "kiwi"])
stampa (frutta)

Produzione:

funzione extend()

Possiamo vedere nell'output che entrambi gli elementi sono stati aggiunti alla lista contemporaneamente usando il metodo extend().

Usando il metodo insert()

Le due funzioni sopra menzionate aggiungono gli elementi alla fine dell'elenco. A volte abbiamo bisogno di aggiungere un elemento in una posizione specifica. Questo può essere fatto usando la funzione insert(). Accetta due argomenti uno è la posizione e l'altro è il valore che vogliamo inserire.

Esempio:

# ha creato una lista di frutti
frutti = ["mela", "mango", "banana"]
stampa (frutta)
# aggiunta dell'uva alla terza posizione dei frutti
frutta.inserire(2,"uva")
stampa (frutta)
# aggiunta dell'uva alla quinta posizione dei frutti
frutta.inserire(4,"kiwi")
stampa (frutta)

Produzione:

funzione insert()

Operazioni di base sugli elenchi

Possiamo eseguire una vasta gamma di operazioni sulle liste Python. Alcune delle operazioni utili di base sono mostrate di seguito.

Liste di iscrizione

Ci sono molti modi in cui possiamo concatenare o unire liste insieme. Il modo più semplice è usare l'operatore +. 

Esempio:

# creazione delle due liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
list2 = ['Questo', 'è', 'il', 'secondo', 'lista']
# unendo le due liste
lista3 = lista1 + lista2
stampa(lista3)

Produzione:

unendo due stringhe

Possiamo anche aggiungere due elenchi usando il metodo extend() di cui abbiamo discusso in precedenza. Dobbiamo passare la seconda ist come argomento per estendere il metodo () dell'oggetto list1 e le due liste verranno unite. 

Esempio:

# creazione delle due liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
list2 = ['Questo', 'è', 'il', 'secondo', 'lista']
# unire le due liste usando il metodo extend()
list1.estendere (lista2)
stampa(lista1)

Produzione:

unire due stringhe usando la funzione extend()

Scorri una lista

Il per loop discusso nel tutorial, tutto ciò che devi sapere sul ciclo for può essere utilizzato per scorrere l'elenco. Scorrere un elenco può essere utile per accedere ai singoli dati da un elenco. 

Esempio:

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
# scorrere l'elenco
per elemento in list1:
stampa (elemento)

Produzione:

iterando un elenco

Controlla se un articolo esiste

Possiamo anche controllare se un elemento esiste in un elenco in python. Per farlo, dobbiamo usare il "nel" parola chiave di pitone. 

Esempio:

>>> frutti = ["mela", "mango", "banana"]
>>> "mango" nella frutta
Vero
>>> "kiwi" nella frutta
falso
>>> "mela" nella frutta
Vero
>>> "banana" non nella frutta
falso

Noi usiamo il nel parola chiave per identificare facilmente se un elemento presente nella lista o meno. Abbiamo anche usato la parola chiave not con la parola chiave in per verificare se un elemento non è presente nell'elenco.

Lunghezza delle liste

Dobbiamo calcolare la lunghezza dell'elenco per trovare il numero di elementi contenuti nell'elenco. Vedremo due metodi. Il metodo più semplice è usare la funzione len() incorporata di Python. 

Esempio:

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
# calcolare la lunghezza della lista
lunghezza = lunghezza(lista1)
print("La lunghezza dell'elenco è:",lunghezza)

Produzione:

lunghezza della lista usando la funzione len()

Possiamo anche usare il pitone per ciclo per calcolare la lunghezza di una lista. Per calcolare la lunghezza di un elenco utilizzando il ciclo for, eseguire il codice seguente.

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
lunghezza = 0
# calcolare la lunghezza della lista
per gli elementi in list1:
lunghezza = lunghezza+1
print("La lunghezza dell'elenco è:",lunghezza)

Produzione:

lunghezza della lista usando il ciclo for

Elimina elementi dell'elenco

Possiamo eliminare un elemento da una lista usando due metodi, i.e., usando il metodo remove() e pop().

Il metodo pop() accetta il numero di indice dell'elemento che vogliamo rimuovere dall'elenco. 

Esempio:

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
# rimozione del secondo elemento dalla lista
list1.rimuovere("è")
stampa(lista1)

Output: avremo "è" rimosso dall'elenco. 

eliminazione usando la funzione remove()

Anche le funzioni remove() funzionano allo stesso modo, ma dobbiamo dare all'elemento un argomento alla funzione remove invece del numero di indice.

Esempio:

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
# rimuovendo l'elemento passando il numero di indice
list1.pop(2)
stampa(lista1)

Output: questo programma rimuoverà dall'elenco l'elemento con numero di indice 2. 

cancellare usando la funzione pop()

Metodi integrati nelle liste

Esistono molti metodi incorporati in Python che possono essere utilizzati durante la manipolazione delle liste. Alcune delle funzioni di cui abbiamo discusso includono insert(), append(), pop(), remove(), len(), ecc. Eccone qualcuno in più.

chiaro()

Il metodo clear() dell'elenco python viene utilizzato per cancellare l'elenco, i.e., rimuovere ogni elemento dalla lista. 

Esempio:

>>> lista1 = [1, 2, 3, 4] # ha creato la lista
>>> lista1
[1, 2, 3, 4]
>>> lista1.clear() # La lista ora diventerà vuota
>>> lista1
[]

copia()

Il metodo copy() viene utilizzato per generare una copia di una lista. 

Esempio:

# creazione delle liste
lista1 = ['Questo', 'è', 'il', 'primo', 'lista']
lista2 = lista1.copia()
stampa(lista2)

Risultato: abbiamo copiato la lista1 in lista2 usando la funzione copy(). 

funzione copy() di lista

contare()

La funzione count() dell'oggetto elenco viene utilizzata per contare l'occorrenza di un elemento nell'argomento.

Esempio:
# creazione delle liste
lista1 = ['mela', 'uva', 'mango', 'mela', 'mela']
# contando il numero di occorrenze di mela
conteggio = lista1.conta('mela')
print("Il numero di occorrenze dell'elemento è:", conteggio)

Output: Otterremo il numero di occorrenze dell'elemento mela nell'elenco. 

count() metodo di lista

indice()

La funzione index() viene utilizzata per ottenere l'indice del primo elemento corrispondente come argomento della funzione.

Esempio:

# creazione delle liste
lista1 = ['mela', 'uva', 'mango', 'mela']
# contando il numero di occorrenze della mela
indice = lista1.index('mela')
print("Il primo indice dell'elemento è:", index)

Produzione:

index() metodo di lista

inversione()

Il metodo reverse() viene utilizzato per invertire l'ordine di una lista. 

Esempio:

# creazione delle liste
lista1 = [1, 2, 3, 4]
# invertire la lista
list1.inversione()
stampa(lista1)

Produzione:

reverse() metodo delle liste

ordinare()

La funzione sort() è usata per ordinare gli elementi di una lista. 

Esempio:

# creazione delle liste
lista1 = [101, 200, 113, 194, 999]
# ordina la lista
list1.ordinare()
stampa(lista1)

Produzione:

ordinare una lista

massimo()

Le funzioni max() restituiranno il massimo della lista data. 

Esempio:

# creazione delle liste
lista1 = [101, 200, 113, 194, 999]
# il massimo della lista
massimo = massimo(lista1)
print("Il primo indice dell'elemento è:", massimo)

Produzione:

trovare il massimo della lista

min()

La funzione min() è simile alla funzione max(), ma invece di restituire il valore massimo, restituirà il minimo.

Conclusione

In questo tutorial, abbiamo appreso tutti i concetti necessari delle liste Python. Ti potrebbe piacere anche vedere il tutorial completo sulle stringhe in Python.

Come acquisire e riprodurre in streaming la tua sessione di gioco su Linux
In passato, giocare era considerato solo un hobby, ma con il tempo l'industria dei giochi ha visto una crescita enorme in termini di tecnologia e nume...
I migliori giochi da giocare con il tracciamento delle mani
Oculus Quest ha recentemente introdotto la grande idea del tracciamento manuale senza controller. Con un numero sempre crescente di giochi e attività ...
Come mostrare l'overlay OSD in app e giochi Linux a schermo intero
Giocare a giochi a schermo intero o utilizzare app in modalità a schermo intero senza distrazioni può tagliarti fuori dalle informazioni di sistema ri...