Skip to content

Aggiungere un elemento a un elenco in Python (append, extend, insert)

Python

Questo articolo descrive come aggiungere un elenco in Python.

È possibile aggiungere un elemento (elemento) a un elenco con append() e insert() e aggiungere un altro elenco a un elenco con extend(), +, += e slice.

  • Aggiungi un elemento a un elenco:append()
  • Aggiungi un altro elenco a un elenco (= combina elenchi):extend(), +, +=
  • Inserisci un elemento in un elenco:insert()
  • Inserisci un altro elenco in un elenco: fetta

Aggiungi un elemento a un elenco:append()

Puoi aggiungere un elemento a un elenco con il metodo append().

Alla fine viene aggiunto un nuovo elemento. Se vuoi aggiungere altre posizioni, come l’inizio, usa il metodo insert() prosegui più avanti.

l = list(range(3))
print(l)
# [0, 1, 2]

l.append(100)
print(l)
# [0, 1, 2, 100]

l.append('new')
print(l)
# [0, 1, 2, 100, 'new']

Viene aggiunto anche un elenco come un elemento, non combinato.

l.append([3, 4, 5])
print(l)
# [0, 1, 2, 100, 'new', [3, 4, 5]]

Aggiungi un altro elenco a un elenco (= combina elenchi):extend(), +, +=

È possibile utilizzare il metodo extend() per aggiungere un altro elenco a un elenco, ovvero combinare elenchi. Tutti gli elementi vengono aggiunti alla fine dell’elenco originale.

Puoi specificare altri oggetti iterabili, come tuple.

l = list(range(3))
print(l)
# [0, 1, 2]

l.extend([100, 101, 102])
print(l)
# [0, 1, 2, 100, 101, 102]

l.extend((-1, -2, -3))
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3]

Nel caso di una stringa (str), ogni viene aggiunto uno per uno.

l.extend('new')
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w']

Puoi anche combinare le liste con l’operatore +.

Nel caso dell’operatore +, viene restituito un nuovo elenco. Puoi anche aggiungere un altro elenco all’elenco esistente con l’operatore +=.

l2 = l + [5, 6, 7]
print(l2)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

l += [5, 6, 7]
print(l)
# [0, 1, 2, 100, 101, 102, -1, -2, -3, 'n', 'e', 'w', 5, 6, 7]

Inserisci un elemento in un elenco:insert()

Puoi inserire un elemento in qualsiasi indice (posizione) con il metodo insert().

Impostare l’indice per il primo e la voce da inserire per il secondo parametro. L’indice all’inizio è 0 (indicizzazione in base zero). Per valori negativi, -1 significa uno prima della fine.

l = list(range(3))
print(l)
# [0, 1, 2]

l.insert(0, 100)
print(l)
# [100, 0, 1, 2]

l.insert(-1, 200)
print(l)
# [100, 0, 1, 200, 2]

Come append(), l’elenco viene aggiunto come un singolo elemento, non combinato.

l.insert(0, [-1, -2, -3])
print(l)
# [[-1, -2, -3], 100, 0, 1, 200, 2]

Si noti che insert() è un’operazione O(n) ed è inefficiente. Vedere il wiki ufficiale per la complessità computazionale delle varie operazioni in elenco.

Il tipo deque è fornito nel modulo delle raccolte di librerie standard per aggiungere un elemento alla testata con O(1). Ad esempio, se si desidera utilizzare i dati come una coda (FIFO), è più efficiente utilizzare deque.

Inserisci un altro elenco in un elenco: fetta

Se si specifica un intervallo utilizzando la sezione e si assegna un altro elenco o tupla, tutti gli elementi vengono aggiunti.

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:1] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 1, 2]

Puoi anche sostituire l’articolo originale. Tutti gli elementi nell’intervallo specificato vengono sostituiti.

l = list(range(3))
print(l)
# [0, 1, 2]

l[1:2] = [100, 200, 300]
print(l)
# [0, 100, 200, 300, 2]

Vedere il seguente articolo per i dettagli sull’affettatura.