Python List Append - Come aggiungere un elemento a un array, spiegato con esempi

benvenuto

Ciao! Se vuoi imparare a usare il append()metodo, allora questo articolo è per te. Questo è un potente metodo di elenco che utilizzerai sicuramente nei tuoi progetti Python.

In questo articolo imparerai:

  • Perché e quando dovresti usare append().
  • Come chiamarlo.
  • Il suo effetto e il valore di ritorno.
  • Come può essere equivalente a insert()e sezionamento di stringhe con gli argomenti appropriati.

Troverai esempi dell'uso di append()applicato a stringhe, interi, float, booleani, elenchi, tuple e dizionari.

Cominciamo! ✨

🔹 Scopo

Con questo metodo, puoi aggiungere un singolo elemento alla fine di un elenco .

Qui puoi vedere append()graficamente l'effetto di :

💡 Suggerimento: per aggiungere una sequenza di singoli elementi, è necessario utilizzare il extend()metodo.

🔸 Sintassi e parametri

Questa è la sintassi di base che devi usare per chiamare questo metodo:

💡 Suggerimento: il punto è molto importante poiché append()è un metodo. Quando chiamiamo un metodo, usiamo un punto dopo l'elenco per indicare che vogliamo "modificare" o "influenzare" quel particolare elenco.

Come puoi vedere, il append()metodo accetta solo un argomento, l'elemento che vuoi aggiungere. Questo elemento può essere di qualsiasi tipo di dati:

  • Numero intero
  • Corda
  • Galleggiante
  • Booleano
  • Un altro elenco
  • Tupla
  • Dizionario
  • Un'istanza di una classe personalizzata

Fondamentalmente, qualsiasi valore che puoi creare in Python può essere aggiunto a un elenco.

💡 Suggerimento: il primo elemento della sintassi (l'elenco) è solitamente una variabile che fa riferimento a un elenco.

Esempio

Questo è un esempio di chiamata a append():

>>> musical_notes = ["C", "D", "E", "F", "G", "A"] >>> musical_notes.append("B")
  • Innanzitutto, l'elenco viene definito e assegnato a una variabile.
  • Quindi, usando questa variabile chiamiamo il append()metodo, passando l'elemento che vogliamo aggiungere (la stringa "B") come argomento.

🔹 Effetto e valore di ritorno

Questo metodo muta (modifica) l'elenco originale in memoria. Non restituisce una nuova copia dell'elenco come potremmo pensare intuitivamente, restituisce None. Pertanto, solo chiamando questo metodo si modifica l'elenco originale.

Nel nostro esempio precedente:

>>> musical_notes = ["C", "D", "E", "F", "G", "A"] >>> musical_notes.append("B")

Puoi vedere (sotto) che l'elenco originale è stato modificato dopo aver aggiunto l'elemento. L'ultimo elemento è adesso "B"e l'elenco originale è ora la versione modificata.

>>> musical_notes ['C', 'D', 'E', 'F', 'G', 'A', 'B']

È possibile confermare che il valore restituito di append()è Noneassegnando questo valore a una variabile e stampandolo:

>>> musical_notes = ["C", "D", "E", "F", "G", "A"] >>> a = musical_notes.append("B") >>> print(a) None

🔸 Esempi

Ora che conosci lo scopo, la sintassi e l'effetto del append()metodo, vediamo alcuni esempi del suo utilizzo con vari tipi di dati.

Aggiungi una stringa

>>> top_players = ["gino234", "nor233", "lal453"] >>> top_players.append("auop342") # The string was appended >>> top_players ['gino234', 'nor233', 'lal453', 'auop342']

Aggiungi un numero intero

>>> data = [435, 324, 275, 567, 123] >>> data.append(456) >>> data [435, 324, 275, 567, 123, 456]

Aggiungi un galleggiante

>>> data = [435.34, 324.35, 275.45, 567.34, 123.23] >>> data.append(456.23) >>> data [435.34, 324.35, 275.45, 567.34, 123.23, 456.23]

Aggiungi un valore booleano

>>> values = [True, True, False, True] >>> values.append(False) >>> values [True, True, False, True, False]

Aggiungi un elenco

Questo metodo aggiunge un singolo elemento alla fine dell'elenco, quindi se passi un elenco come argomento, l'intero elenco verrà aggiunto come un singolo elemento (sarà un elenco nidificato all'interno dell'elenco originale).

>>> data = [[4.5, 4.8, 5.7], [2.5, 2.6, 2.7]] >>> data.append([6.7, 2.3]) >>> data [[4.5, 4.8, 5.7], [2.5, 2.6, 2.7], [6.7, 2.3]]

Aggiungi una tupla

This works exactly the same for tuples, the entire tuple is appended as a single element.

>>> data = [[4.5, 4.8, 5.7], [2.5, 2.6, 2.7]] >>> data.append((6.7, 2.3)) >>> data [[4.5, 4.8, 5.7], [2.5, 2.6, 2.7], (6.7, 2.3)] 

💡 Tip: If you need to add the elements of a list or tuple as individual elements of the original list, you need to use the extend() method instead of append(). To learn more about this, you can read my article: Python List Append VS Python List Extend – The Difference Explained with Array Method Examples

Append a dictionary

Similarly, if you try to append a dictionary, the entire dictionary will be appended as a single element of the list.

>>> data = [{"a": 1, "b": 2}] >>> data.append({"c": 3, "d": 4}) >>> data [{'a': 1, 'b': 2}, {'c': 3, 'd': 4}]

🔹 Equivalence of Append and Insert

An interesting tip is that the insert() method can be equivalent to append() if we pass the correct arguments.

The insert() method is used to insert an element at a particular index (position) in the list.

This is the syntax used to call the insert() method:

To make it equivalent to append():

  • The value of index has to be the length of the list (len()) because we want the element to be the last element of the list.

Here's an example that shows that the result of using insert with these arguments is equivalent to append():

>>> musical_notes = ["C", "D", "E", "F", "G", "A"] >>> musical_notes.insert(len(musical_notes), "B") >>> musical_notes ['C', 'D', 'E', 'F', 'G', 'A', 'B']

But as you have seen, append() is much more concise and practical, so it's usually recommended to use it in this case.

🔸 Equivalence of Append and List Slicing

There is also an interesting equivalence between the append() method and list slicing.

This syntax is essentially assigning the list that contains the element [] as the last portion (end) of the list. Here you can see that the result is equivalent to append():

>>> musical_notes = ["C", "D", "E", "F", "G", "A"] >>> musical_notes[len(musical_notes):] = ["B"] >>> musical_notes ['C', 'D', 'E', 'F', 'G', 'A', 'B']

These are interesting alternatives, but for practical purposes we typically use append() because it's a priceless tool that Python offers. It is precise, concise, and easy to use.

I really hope that you liked my article and found it helpful. Now you can work with append() in your Python projects. Check out my online courses. Follow me on Twitter. ⭐️