Cómo añadir y eliminar elementos en una lista de Python

Conviértete en un maestro de la manipulación de Listas en Python: Añade y elimina elementos con Precisión. Con ejemplos prácticos y consejos útiles, este post te ayudará a dominar las habilidades fundamentales para trabajar con listas en Python.

Métodos de Lista de Python con mensaje que dice 'Typethepipe'

Las listas en Python. Entendiendo sus características y cómo añadir y eliminar elementos de ellas

En Python, las listas son una estructura de datos versátil y ampliamente utilizada que permite almacenar una colección ordenada de elementos, que pueden ser de diferentes tipos. Las principales características de las listas incluyen:

  • su capacidad para contener elementos heterogéneos,
  • su indexación basada en cero,
  • la capacidad de modificar elementos existentes,
  • agregar nuevos elementos y eliminar elementos.

Las listas son mutables, lo que significa que pueden cambiar su contenido después de haber sido creadas. Además, las listas admiten operaciones como la concatenación, la reproducción y la aplicación de funciones a cada elemento de la lista, lo que las hace herramientas poderosas para manipular y organizar datos.

Con ejemplos prácticos y consejos útiles, este post te ayudará a dominar las habilidades fundamentales para trabajar con listas en Python y optimizar la manipulación de datos en tus proyectos de programación.


Añadir elementos a una lista de Python

Para añadir elementos a una lista, nos podemos valer del método append() para agregar un elemento al final de la lista o el método insert() para insertar un elemento en una posición específica. También puedes extender una lista con otra lista utilizando el método extend() o utilizar el operador + para concatenar dos listas. Estas opciones te brindan la flexibilidad para modificar tus listas según tus necesidades, lo que es esencial en el desarrollo de aplicaciones y la manipulación de datos en Python.


append():

Imagina que estás creando una lista de reproducción de música. Cada vez que descubres una nueva canción que te encanta, simplemente la añades al final de tu lista con append(). ¡Así de fácil!


mi_lista = []
mi_lista.append('tomate')

Recuerda que append() siempre añade elementos al final de la lista. Si necesitas insertar elementos en una posición específica, lo comentaremos en los siguientes parágrafos.


extend() y operador +: Alternativas para la concatenación.

También podemos concatenar listas. Esto se puede hacer con el operador + entre dos listas o bien usando el método extend de una de ellas. Ambas operaciones deben partir de la existencia de dos listas, y el resultado será una lista con los elementos de las dos iniciales, sin anidación de listas.


mi_lista_alimentos_ext = mi_lista + ["lechuga", "pimiento", "ajo"]

mi_lista.extend(["lechuga", "pimiento", "ajo"])

mi_lista == mi_lista_alimentos_ext
## True
mi_lista_alimentos_ext
## ['tomate', 'lechuga', 'pimiento', 'ajo']

Por anidación de listas nos referimos al siguiente ejemplo, que según el caso y pese a ser un objeto más complejo y haber otras alternativas, también nos va a ser útil. Tendremos una lista como elemento dentro de otra lista.

mi_lista.append(['tomate'])
mi_lista
## ['tomate', 'lechuga', 'pimiento', 'ajo', ['tomate']]

La ventaja de usar extend() es que modificas una lista existente en lugar de crear una nueva.

Ambas opciones de concatenación son útiles en diferentes situaciones, dependiendo de si prefieres mantener intactas tus listas originales o si estás dispuesto a modificar una de ellas para obtener la concatenación deseada.


insert(): Añade elemento en una posición determinado de la lista

O insertar el elemento en un índice determinado:

mi_lista.insert(0, ["a", "b", "b"])
mi_lista
## [['a', 'b', 'b'], 'tomate', 'lechuga', 'pimiento', 'ajo', ['tomate']]

La posibilidad de insertar elementos en una ubicación específica es útil cuando necesitas mantener un orden particular en tu lista o cuando deseas insertar elementos en medio de una secuencia sin reemplazar los elementos existentes. Esta funcionalidad es especialmente valiosa en situaciones en las que se requiere una manipulación precisa de los datos almacenados en una lista. Aunque, de nuevo, en esas situaciones viene bien evaluar si en lugar de ello, necesitamos hacer uso de un objeto diferente a la lista . Todo dependerá de la utilidad que necesitemos conseguir.


Eliminar elementos de la lista

¿Qué pasa si por el contratrio lo que necesitamos es eliminar elementos de una lista? Eliminar elementos de una lista en Python es una operación común, ya que te permite mantener tus datos actualizados y adaptados a las necesidades de tu aplicación. Par aello, puedes utilizar métodos como remove(), que elimina la primera ocurrencia de un valor específico, o pop(), que elimina un elemento en una posición dada y lo devuelve. También puedes utilizar la instrucción del para eliminar elementos por su índice. Además, puedes emplear métodos como clear() para vaciar por completo la lista o slicing para crear una nueva lista sin los elementos que deseas eliminar. Estas herramientas te permiten gestionar eficazmente tus datos en Python y mantener tus listas actualizadas de acuerdo a las necesidades de tu programa.


remove(): Por elemento

El método remove() en Python se utiliza para eliminar la primera ocurrencia de un elemento específico en una lista. Es importante destacar que si intentas eliminar un elemento que no existe en la lista, se generará un error.

mi_lista.remove('tomate')
mi_lista
## [['a', 'b', 'b'], 'lechuga', 'pimiento', 'ajo', ['tomate']]

Para eliminar todas las ocurrencias, es necesario por tanto algo como:

mi_lista = [1, 2, 3, 4, 3, 5, 6, 3]
elemento_a_eliminar = 3

mi_lista = [x for x in mi_lista if x != elemento_a_eliminar]

print(mi_lista)
## [1, 2, 4, 5, 6]

De esta manera, podemos fácilmente eliminar todos los determinados elementos en una lista, no solo la primera ocurrencia.


pop(): Elimina elemento de una lista basado en su índice.

El método pop() en Python es una herramienta versátil que te permite eliminar elementos de una lista según su índice, lo que lo convierte en una función imprescindible para el manejo de datos. Al especificar un índice como primer argumento, pop() elimina el elemento en esa posición y lo devuelve, lo que te brinda el poder de acceder a ese elemento antes de su eliminación si es necesario. Además, si utilizas pop() sin un índice, eliminará y te devolverá el último elemento de la lista de forma predeterminada. Esta flexibilidad lo convierte en una función de alto valor tanto para tareas simples como para complejas en programación, y es esencial para mantener el control y la precisión en la manipulación de tus listas en Python.

Veamos un ejemplo:

mi_lista.pop(0)
## 1

y aquí lo guardamos en un objecto mi_carrito_compra mientras lo eliminamos de la lista de alimentos:

mi_carrito_compra = []
mi_carrito_compra.append(mi_lista_alimentos_ext.pop(0))
mi_carrito_compra
## ['tomate']

Por defecto, si no se le pasa ningún índice, el método pop() extraerá de la lista el último elemento.


clear(): Vacia por completo la list

El método clear() en Python es como un “botón de reinicio” para tus listas. Cuando lo utilizas, vacía por completo una lista, eliminando todos sus elementos. Por ejemplo, si estás desarrollando una aplicación que almacena datos temporales en una lista y deseas borrar esos datos de manera eficiente cuando ya no son necesarios, clear() es la función que necesitas.


Python sets (conjuntos) y HashLists como listas sin elementos duplicados

Los conjuntos en Python son estructuras de datos que funcionan de manera similar a las listas, pero con una característica fundamental: no permiten elementos duplicados. Al usar conjuntos, puedes crear colecciones de datos únicos de manera eficiente. Esto significa que si intentas agregar un elemento que ya está presente en el conjunto, simplemente se ignorará, lo que es perfecto cuando necesitas garantizar la unicidad de tus datos. Pueden expresarse con set() o con {} por ejemplo: {1, 2, 3}.

Veamos un ejemplo de conjuntos en Python:

mi_lista_con_duplicados = ["manzana", "platano", "manzana"]
set(mi_lista_con_duplicados)
## {'platano', 'manzana'}

y sus operaciones entre conjuntos de Python más básicas:

mi_nueva_lista = ["uva", "manzana"]

set(mi_lista_con_duplicados) - set(mi_nueva_lista)
## {'platano'}
set(mi_lista_con_duplicados + mi_nueva_lista)
## {'uva', 'platano', 'manzana'}

El principal uso de los conjuntos o sets es la comprobación rápida de pertenencia. Por lo tanto, no depende del orden, por lo que podemos considerarlos como ‘no ordenados’ a diferencia de las listas.


Mantente al día de Python en Typethepipe

Mantente al día con las últimas novedades y consejos en programación en Typethepipe. Síguenos para estar al tanto de los avances en el mundo de Python y continuar mejorando tus habilidades de desarrollo. ¡Hasta la próxima y no olvides Seguirnos!


Carlos Vecina
Carlos Vecina
Senior Data Scientist at Jobandtalent

Senior Data Scientist at Jobandtalent | AI & Data Science para aportar valor en la empresa