Append de Python: amplía listas fácilmente

El método append se puede utilizar para añadir un elemento al final de una lista de Python. Si quieres añadir varios elementos a la vez o insertar un elemento en un índice específico, los métodos Python extend y Python insert son adecuados para ello.

¿Cómo funciona el método append de Python?

Con el método append puedes añadir un elemento al final de una lista ya existente. El elemento que añadir puede tener cualquier tipo de dato. Por lo tanto, puedes utilizarlo para rellenar listas de Python con tipos de datos simples (por ejemplo, enteros, números de coma flotante, etc.), así como con tipos de datos más complejos (por ejemplo, listas adicionales).

La sintaxis del método es la siguiente:

lista.append(element)
Python

Aquí lista es el nombre de la lista, y element es el elemento que se va a añadir. En el siguiente ejemplo, se añaden elementos de distintos tipos de datos a la misma lista:

lista = [1, 2, 3]
lista.append(4)
número = "Cinco"
lista.append(número)
print(lista)   # Resultado: [1, 2, 3, 4, 'Cinco']
Python

Como puedes ver, con append()puedes añadir un elemento de cualquier tipo a una lista de Python. Puedes introducir el elemento que añadir directamente como un parámetro o crearlo como una variable de antemano y luego pasarlo. Sin embargo, si intentas añadir varios elementos a la vez con append(), no funcionará. Puedes verlo en el siguiente ejemplo:

lista2 = [6, 7]
lista.append(lista2)
print(lista)   # Resultado: [1, 2, 3, 4, 'Cinco', [6, 7]]
Python

En este caso, la lista list2 se pasó como parámetro al llamar al método. En lugar de añadir los elementos de la lista2a la otra lista, el método añadió la propia lista2 como un único elemento. Esto ha dado lugar a una lista anidada, algo que no se buscaba en este caso. Este problema puede resolverse iterando sobre list2con un bucle for en Python.

for numero in lista2:
    lista.append(numero)
print(lista)    # Resultado: [1, 2, 3, 4, 'Cinco', [6, 7], 6, 7]
Python

Esta solución es poco clara. Por lo tanto, en tales casos, el método Python extend es la mejor opción, ya que puede añadir varios elementos a una lista a la vez.

Aplicación a otras estructuras de datos

Aunque el método append de Python se utiliza más comúnmente para manejar listas, también se puede aplicar a otras estructuras de datos comunes. Sin embargo, hay algunas diferencias importantes que debes tener en cuenta.

Arrays

Los arrays en Python no forman parte de su librería estándar y tienen que ser importados desde un módulo externo como numpy o array. Sin embargo, si es importante para ti ser eficiente con el espacio y la potencia de cálculo, entonces los arrays son a menudo una mejor opción que las listas. Sin embargo, los arrays están algo más limitados porque solo pueden contener elementos que tengan el mismo tipo de datos. Este tipo de datos se determina cuando se crea el array. En consecuencia, con el método append tampoco es posible añadir elementos de distintos tipos de datos a un array. Puedes verlo en el siguiente ejemplo:

import numpy as np
array1 = np.array('i', [100, 101, 102])
array1.append(103)
print(array1)
array1.append('a')   # Esta línea genera un mensaje de error
Python

Además, es importante tener en cuenta que los arrays tienen una longitud fija que se establece cuando se crea la estructura de datos y no se puede cambiar después. Así que si creas el array [1, 2, 3, 4, 5], tendrá la longitud 5. Python te permite añadir un elemento adicional a un array con append(). Para esto, sin embargo, todo el array es borrado en segundo plano y reconstruido con el elemento adicional. Esto debe tenerse en cuenta si se quiere hacer un uso eficiente de los recursos del sistema.

Deque

Al igual que con las listas y los arrays, también existe un método append para las estructuras de datos deque que se comporta de forma muy similar. Un deque (abreviatura de doublé-ended queue) es una lista en la que se pueden añadir o eliminar elementos tanto al final como al principio. Aquí el método append se comporta de forma idéntica a una lista, pero hay un método adicional, appendleft(). A diferencia de append(), este método inserta el elemento en el lado izquierdo del deque.

from collections import deque
numeros_naturales = deque([1, 2, 3])
numeros_naturales.append(4)
numeros_naturales.appendleft(0)
print(numeros_naturales)   # Resultado: deque([0, 1, 2, 3, 4])
Python

Ejemplo de uso: así puedes utilizar append()

Aunque solo puedes añadir elementos individuales al final de una lista con el método append de Python, es la opción perfecta si quieres dar pasos adicionales al añadir un elemento. Puedes verlo en el siguiente ejemplo. Tienes una lista de números grandes. Cada número se divide por 7 y el resto de esta operación se añade a una segunda lista.

numeros_grandes = [2141, 5683, 456, 789, 120, 101, 89005]
resto = []
for numero in numeros_grandes:
    resto.append(numero % 7)
print(numeros_grandes)    # Resultado: [2141, 5683, 456, 789, 120, 101, 89005]
print(resto)    # Resultado: [6, 6, 1, 5, 1, 3, 0]
Python

Como puedes ver, append() es muy útil cuando se necesita tratar con elementos de forma individual al añadirlos.

Consejo

¿Quieres implementar tu página web u otra aplicación web de manera rápida, fácil y directa a través de Git? Entonces, Deploy Now de IONOS es la plataforma perfecta para ti.

¿Le ha resultado útil este artículo?
Page top