English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo articolo, impareremo tutto ciò che riguarda l'elenco (List) Python; come crearli, fare tagli agli elenchi, aggiungere o rimuovere elementi, ecc.
Python fornisce una serie di tipi di dati composti chiamati di solito sequenze. L'elenco è uno dei tipi di dati più utilizzati e più ampiamente utilizzati in Python.
In programmazione Python, viene creato un elenco (List) mettendo tutti gli elementi (progetti) tra parentesi quadre [] e separati da virgole.
Può avere un numero illimitato di elementi e possono avere tipi diversi (interi, float, stringhe, ecc.).
# elenco vuoto my_list = [] # elenco di interi my_list = [1, 2, 3] # elenco con tipi di dati misti my_list = [1, "Hello", 3.4]
Analogamente, un elenco può anche avere un altro elenco come elemento. Questo si chiama elenco annidato.
# elenco annidato my_list = ["mouse", [8, 4, 6], ['a']]
Possiamo accedere agli elementi dell'elenco in vari modi.
Possiamo utilizzare l'operatore di indagine [] per accedere agli elementi dell'elenco. L'indice parte da 0. Pertanto, un elenco contenente 5 elementi ha indici da 0 a 4.
Prova ad accedere ad altri elementi; altrimenti verrà sollevato un errore IndexError. L'indice deve essere un intero. Non possiamo utilizzare float o altri tipi, il che causerebbe un TypeError.
Accedi all'elenco annidato utilizzando l'indice incrociato.
my_list = ['p', 'r', 'o', 'b', 'e'] # Output: p print(my_list[0]) # Output: o print(my_list[2]) # Output: e print(my_list[4]) # Errore! Solo gli interi possono essere utilizzati come indici # my_list[4.0] # Elenco annidato n_list = ['Happy', [2, 0, 1, 5]] # Indice annidato # Output: a print(n_list[0][1]) # Output: 5 print(n_list[1][3])
Python consente di utilizzare l'indice negativo per le sequenze. L'indice -1 rappresenta l'ultimo elemento, -2 rappresenta il penultimo, e così via.
my_list = ['p', 'r', 'o', 'b', 'e'] # Output: e print(my_list[-1]) # Output: p print(my_list[-5])
Possiamo utilizzare l'operatore di scissione (due punti: ) per accedere a una serie di elementi in una lista.
my_list = ['p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z'] # Dall'elemento terzo al quinto print(my_list[2:5]) # Dall'inizio al quarto elemento print(my_list[:-5]) # Elemento sesto fino alla fine print(my_list[5:]) # Elementi dall'inizio alla fine print(my_list[:])
Considerando l'indice tra gli elementi come mostrato, la scissione può ottenere un'efficace visualizzazione. Se vogliamo accedere a un intervallo, abbiamo bisogno di due indici per tagliare quella parte dell'elenco.
La lista è mutabile, il che significa che i suoi elementi possono essere modificati, diversamente dastringotuple
Possiamo utilizzare l'operatore di assegnazione (=) per modificare un elemento o una serie di elementi.
# Elenco di valori odd = [2, 4, 6, 8] # Modifica il primo elemento odd[0] = 1 # Output: [1, 4, 6, 8] print(odd) # Modifica il secondo al quarto elemento odd[1:4] = [3, 5, 7] # Output: [1, 3, 5, 7] print(odd)
Possiamo utilizzare il metodo append() per aggiungere un elemento a un elenco, o il metodo extend() per aggiungere più elementi a un elenco.
odd = [1, 3, 5] odd.append(7) # Output: [1, 3, 5, 7] print(odd) odd.extend([9, 11, 13]) # Output: [1, 3, 5, 7, 9, 11, 13] print(odd)
Possiamo anche utilizzare l'operatore + per combinare due elenchi. Questo si chiama anche concatenazione.
L'operatore di moltiplicazione ripete la lista per il numero specificato di volte.
odd = [1, 3, 5] # Output: [1, 3, 5, 9, 7, 5] print(odd + [9, 7, 5]) # Output: ['re', 're', 're'] print(['re'] * 3)
Inoltre, possiamo utilizzare il metodo insert() per inserire un elemento in una posizione specifica, o inserire più elementi comprimendo più elementi in una sezione vuota della lista.
odd = [1, 9] odd.insert(1, 3) # Output: [1, 3, 9] print(odd) odd[2:2] = [5, 7] # Output: [1, 3, 5, 7, 9] print(odd)
Possiamo utilizzare la parola chiave del per eliminare uno o più elementi dalla lista. Può anche eliminare l'intera lista.
my_list = ['p','r','o','b','l','e','m'] # Elimina un elemento del my_list[2] # Output: ['p', 'r', 'b', 'l', 'e', 'm'] print(my_list) # Elimina più elementi del my_list[1:5] # Output: ['p', 'm'] print(my_list) # Elimina tutta la lista del my_list # Error: List not defined print(my_list)
Possiamo utilizzare il metodo remove() per eliminare un elemento specifico, o il metodo pop() per eliminare un elemento all'indice specificato.
Se non viene fornito un indice, il metodo pop() eliminerà e restituirà l'ultimo elemento. Questo aiuta a implementare la lista come un stack (struttura dati di tipo FIFO).
Possiamo anche utilizzare il metodo clear() per svuotare la lista.
my_list = ['p','r','o','b','l','e','m'] my_list.remove('p') # Output: ['r', 'o', 'b', 'l', 'e', 'm'] print(my_list) # Output: 'o' print(my_list.pop(1)) # Output: ['r', 'b', 'l', 'e', 'm'] print(my_list) # Output: 'm' print(my_list.pop()) # Output: ['r', 'b', 'l', 'e'] print(my_list) my_list.clear() # Output: [] print(my_list)
Infine, possiamo eliminare un elemento dalla lista assegnando una lista vuota alle sezioni degli elementi.
>>> my_list = ['p', 'r', 'o', 'b', 'l', 'e', 'm'] >>> my_list[2:3] = [] >>> my_list ['p', 'r', 'b', 'l', 'e', 'm'] >>> my_list[2:5] = [] >>> my_list ['p', 'r', 'm']
Di seguito è riportato un elenco dei metodi disponibili per l'oggetto list nel programming Python.
Sono accessibili tramite list.method(). Alcuni di questi metodi sono già stati utilizzati.
Esempi di alcuni metodi della lista Python:
my_list = [3, 8, 1, 6, 0, 8, 4] # Output: 1 print(my_list.index(8)) # Output: 2 print(my_list.count(8)) my_list.sort() # Output: [0, 1, 3, 4, 6, 8, 8] print(my_list) my_list.reverse() # Output: [8, 8, 6, 4, 3, 1, 0] print(my_list)
L'elaborazione di liste è un metodo chiaro e conciso per creare nuove liste da liste esistenti di Python.
L'elaborazione di liste contiene un'espressione seguita da parentesi quadreistruzione for
Questo è un esempio di elencare i potenze di 2 con un aumento di 2 per ciascun elemento.
pow2 = [2 ** x for x in range(10)] # Output: [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] print(pow2)
Questo codice è equivalente a
pow2 = [] for x in range(10): pow2.append(2 ** x)
l'elaborazione di liste può includere più for oistruzione ifL'istruzione condizionale opzionale può filtrare gli elementi della nuova lista. Ecco alcuni esempi.
>>> pow2 = [2 ** x for x in range(10) if x > 5] >>> pow2 [64, 128, 256, 512] >>> dispari = [x for x in range(20) if x % 2 == 1] >>> dispari [1, 3, 5, 7, 9, 11, 13, 15, 17, 19] >>> [x+y for x in ['Python ','C '] for y in ['Language','Programming']] ['Linguaggio Python', 'Programmazione Python', 'Linguaggio C', 'Programmazione C']
Possiamo utilizzare la parola chiave in per testare se un elemento esiste in una lista.
my_list = ['p','r','o','b','l','e','m'] # Output: True print('p' in my_list) # Output: False print('a' in my_list) # Output: True print('c' not in my_list)
Utilizzando il ciclo for, possiamo esplorare ogni elemento di una lista.
for fruit in ['apple','banana','mango']: print("I like",fruit)