Tipos de Colecciones en Python

En Python, list, tuple, dict y set son las colecciones nativas para agrupar múltiples valores. Se diferencian por si conservan el orden, si permiten duplicados y si son mutables. A continuación se describen sus características y ejemplos rápidos.

1 Lista (list) en Python

Las listas son la colección más versátil, ideal para datos que cambian con frecuencia.

  Importante

  • Sintaxis: Se usa con corchetes [].
  • Uso: Ideal para colecciones de elementos que necesitan ser modificados (añadir, eliminar o reordenar).
  • Orden: Mantiene el orden de inserción y se accede por índice.
  • Duplicados: Permite elementos duplicados.
  • Mutable: Sí; puedes añadir, eliminar o modificar elementos tras su creación.

Analagía: Es como una lista de compras que puedes reordenar, añadir cosas nuevas o tachar artículos.

python
# Ejemplo de Lista
ejemplo_lista = ['manzana', 'banana', 10, True]

# Acceder a un elemento por índice
print(ejemplo_lista[0]) 
# Salida: manzana

# Una lista es mutable
ejemplo_lista.append("uva") 
print(ejemplo_lista) 
# Salida: ['manzana', 'banana', 10, True, 'uva']

2 Tupla (tuple) en Python

Es una colección de elementos ordenados, las tuplas se utilizan para datos que deben permanecer fijos e inalterados.

  Importante

  • Sintaxis: Se usa con paréntesis ().
  • Uso: Ideal para agrupar datos relacionados que no deberían cambiar, como coordenadas, constantes o registros fijos.
  • Orden: Mantiene el orden de inserción y se accede por índice.
  • Duplicados: Permite elementos duplicados.
  • Mutable: No; no puedes añadir, eliminar o modificar elementos tras su creación.

Analagía: Es como la fecha de nacimiento de alguien: es un conjunto de valores fijos que no deben cambiar.

python
# Ejemplo de Tupla
ejemplo_tupla = ('lunes', 'martes', 'miércoles')

# Acceder a un elemento por índice
print(ejemplo_tupla[0]) 
# Salida: lunes

# Intento de modificar genera un error (TypeError)
# ejemplo_tupla.append('jueves') 
print(ejemplo_tupla[0])
# Salida: lunes

3 Diccionario (dict) en Python

Los diccionarios son perfectos para almacenar datos en pares con nombres descriptivos, es una Colección de pares clave-valor que es mutable.

  Importante

  • Orden: Mantiene el orden de inserción (desde Python 3.7).
  • Sintaxis: Se usa con llaves {} y el formato clave: valor.
  • Uso: Ideal para almacenar datos donde necesitas una búsqueda rápida y descriptiva usando una clave única.
  • Duplicados: Solo valores. Las claves deben ser únicas.
  • Mutable: Sí; puedes añadir, eliminar o cambiar pares.

Analagía: Es como la agenda de contactos, donde buscas a una persona (clave) para obtener su número de teléfono (valor).

python
# Ejemplo de Diccionario
ejemplo_dict = {
  'nombre': 'Urian', 
  'edad': 40, 
  'ciudad': 'Bogotá'
}

# Acceso a un valor por clave
print(ejemplo_dict['nombre']) 
# Salida: Urian

# Modificar un valor por clave
ejemplo_dict['edad'] = 41
# Salida: 41

4 Conjunto (set) en Python

Es una colección desordenada de elementos únicos. Los conjuntos se utilizan cuando la unicidad de los elementos es crucial.

  Importante

  • Sintaxis: Se usa con llaves {} (sin pares clave-valor) o la función set().
  • Uso: Ideal para eliminar duplicados de colecciones o para realizar operaciones matemáticas de conjuntos (unión, intersección, etc.).
  • Orden: No (Desordenado). No mantiene el orden de inserción y no se accede por índice.
  • Duplicados: No. Almacena solo elementos únicos.
  • Mutable: Sí; puedes añadir o eliminar elementos tras su creación.

Analagía: Es como un grupo de amigos; no importa en qué orden los mencionaste, solo importa que no haya duplicados.

python
# Ejemplo de Conjunto (el 5 duplicado es eliminado automáticamente)
ejemplo_set = {1, 5, 2, 8, 5, 1}

print(ejemplo_set) 
# Salida: {8, 1, 2, 5} (El orden puede variar)

# Agregar un elemento
ejemplo_set.add(9)

# Ejemplo usando la funcion set()
otro_set = set([1, 2, 3, 4, 4, 5])
print(otro_set) 
# Salida: {1, 2, 3, 4, 5} (El orden puede variar)

# Añadir más elementos
otro_set.update([6, 7, 8])
print(otro_set) 
# Salida: {1, 2, 3, 4, 5, 6, 7, 8} (El orden puede variar)