Python

Diferencia entre listas y tuplas en Python

A la hora de comenzar con Python es habitual utilizar las listas y las tuplas de forma prácticamente indiferente. Aparentemente ambas son dos estructuras de datos que sirven para lo mismo. Pero esto no es así, existen importantes diferencias entre listas y tuplas en Python que es necesario conocer.

La principal diferencia entre listas y tuplas en Python

La principal diferencia entre las listas y las tuplas de Python, y el motivo por el que muchos usuarios solamente utilizar listas, es que las listas son mutables mientras que las tuplas no lo son. ¿Pero qué significa ser mutable o no? Básicamente un objeto mutable se puede modificar una vez creado mientras que uno que no lo es no. Así el contenido de las listas se puede modificar durante la ejecución del programa mientras para las tuplas no es posible alterar su contenido.

Consecuencias de ser o no ser mutables

El hecho de ser mutable tiene además otras consecuencias. Para ser mutables las listas se almacena en dos bloques de memoria, mientras que las tuplas solo necesitan uno. Lo que provoca que las tuplas ocupen menos memoria que las listas. Además, por el hecho de no ser mutables, es más rápido manejar tuplas que listas.

Ejemplos de listas y tuplas

Para crear una lista solamente se tiene que enumerar los valores separados por comas entre corchetes. Así se puede crear una simplemente con la siguiente línea

>>> lista = ["uno", "dos", "tres"]

Ahora, dado que las lista es mutable se puede modificar el contenido de este asignado el nuevo valor en cualquiera de los registros existentes. Así se puede cambiar el primer registro mediante la expresión

>>> lista[0] = "cuatro"

Lo que se puede comprobar accediendo al contenido de la lista

>>> lista
['cuatro', 'dos', 'tres']

Por otro lado, las tuplas se crean utilizando paréntesis en lugar de corchetes. Esto es, para escribir una tupla se puede hacer

>>> tupla = ("uno", "dos", "tres")

En el caso de que se intente modificar el contenido de una tupla Python generará un error como se puede ver simplemente probando.

>>> tupla[0] = "cuatro"
Traceback (most recent call last):
  File "", line 1, in 
TypeError: 'tuple' object does not support item assignment

Conclusiones

En esta entrada se han visto las principales diferencias entre listas y tuplas en Python, básicamente en el hecho de que las listas son mutables mientras que las tuplas no lo son. Así se puede comprobar en qué casos es mejor una u otra estructura de datos. En el caso de que no sea necesario modificar el contenido de los datos la mejor opción es la tupla, ya que es ocupa menos memoria y es más rápida. En el resto de los casos la mejor opción será utilizar listas.

Imágenes: Pixabay (Mediamodifier)

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Actualizar expresslanets a ES Modules con tsx y Vitest

expresslanets es la plantilla de API REST con Express y TypeScript que empezó como una…

4 días ago

Pareto/NBD: cuando el abandono silencioso cambia el CLV

En el artículo del Dashboard vimos que Pareto/NBD aparecía junto a BG/NBD con un ajuste…

6 días ago

Por qué migrar tus proyectos TypeScript a ES Modules en 2026

Durante años, CommonJS (require/module.exports) ha sido la forma por defecto de organizar módulos en Node.js,…

2 semanas ago

Método del codo: interpretación correcta y limitaciones

Cuando usas k-means tienes que decidir algo incómodo de entrada: cuántos grupos, , vas a…

2 semanas ago

Errores comunes al interpretar resultados estadísticos

La estadística no suele fallar en los cálculos: falla en la interpretación. El test está…

3 semanas ago

Dashboard CLV: cuatro modelos, un mismo dataset, conclusiones muy distintas

Los artículos anteriores de esta serie cubrieron cuatro formas de mirar el valor del cliente:…

3 semanas ago

This website uses cookies.