- Cambiando los elementos de una lista
- Agregando un elemento a la lista
- Eliminando un elemento de la lista
Los tipos de datos primitivos con los que hemos trabajado hasta ahora no pueden ser modificados. Cualquier función y método que se aplique en ellos devolverá nuevos valores, pero no puede hacer nada con el valor antiguo.
name = 'Códica'
name.upper() # 'CODICA'
# El valor de name no ha cambiado
print(name) # 'Códica'
Esta regla no se aplica con las listas. Las listas pueden aumentar, disminuir, cambiar valores por índices. A continuación, analizaremos todas estas operaciones.
Cambiando los elementos de una lista
La sintaxis para modificar un elemento en una lista es prácticamente idéntica a la de acceder a un elemento. La única diferencia es que en este caso se realiza una asignación:
animals = ['cats', 'dogs', 'birds']
# El primer elemento de la lista cambia
animals[0] = 'horses'
print(animals) # => [ 'horses', 'dogs', 'birds' ]
Agregando un elemento a la lista
El método append() agrega un elemento al final de la lista:
animals = ['cats', 'dogs', 'birds']
animals.append('horses')
# La lista de animales ha cambiado, ha aumentado
print(animals) # => [ 'cats', 'dogs', 'birds', 'horses' ]
# La cadena 'caballos' se añadió al final de la lista (índice = 3)
print(animals[3]) # => 'horses'
El método insert() agrega un elemento antes del especificado por el índice en la lista:
animals = ['cats', 'dogs', 'birds']
# Agrega un elemento antes del índice 2, es decir, entre 'dogs' y 'birds'
animals.insert(2, 'horses')
print(animals) # => ['cats', 'dogs', 'horses', 'birds']
El método extend() amplía la lista agregando todos los elementos de la lista que se le pasa como argumento:
animals = ['cats', 'dogs']
birds = ['heron', 'sparrow', 'swift'] # 'garza', 'gorrión', 'vencejo'
animals.extend(birds)
print(animals) # => ['cats', 'dogs', 'heron', 'sparrow', 'swift']
Los principiantes a menudo cometen este error:
l = [1]
l = l.append(2)
print(l) # None
# ¿Dónde está la lista?
Hay que recordar que ciertos métodos modifican la lista en sí, pero devuelven None. Esto te ayudará a evitar errores inesperados y sorpresas.
Eliminando un elemento de la lista
Se puede eliminar un elemento de la lista con el operador del.
animals = ['cats', 'dogs', 'birds']
# eliminamos el elemento en el índice 1
del animals[1]
print(animals) # => ['cats', 'birds']
En general, la reducción del tamaño de la lista es una operación no deseada. Puede ser especialmente engañosa cuando se recorre la lista en un bucle. Hablaremos más sobre esto en una de las próximas lecciones.
Para acceder completo a curso necesitas un plan básico
El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.