4 tipos de colecciones de datos más

 Te explico los 4 tipos de colecciones de datos más comunes en programación:

📋 Listas (Arrays)["",""]

Características:

  • Ordenadas - Mantienen el orden de inserción

  • Mutables - Se pueden modificar después de crearlas

  • Permiten duplicados - Pueden tener elementos repetidos

  • Indexadas - Se accede por posición numérica (0, 1, 2...)

Ejemplo (Python):

python
frutas = ["manzana", "banana", "cereza"]
frutas.append("naranja")  # Agregar elemento
print(frutas[1])  # Output: "banana"

🔄 Conjuntos (Sets){}

Características:

  • No ordenados - No mantienen un orden específico

  • No permiten duplicados - Elementos únicos

  • Mutables - Se pueden agregar/eliminar elementos

  • No indexados - No se puede acceder por posición

Ejemplo (Python):

python
colores = {"rojo", "verde", "azul"}
colores.add("amarillo")
print("rojo" in colores)  # Output: True

📖 Diccionarios{:}

Características:

  • Pares clave-valor - Cada elemento tiene una clave única

  • No ordenados (en versiones antiguas de Python)

  • Mutables - Se pueden modificar

  • Claves únicas - No puede haber claves duplicadas

Ejemplo (Python):

python
persona = {
    "nombre": "Ana",
    "edad": 25,
    "ciudad": "Madrid"
}
print(persona["nombre"])  # Output: "Ana"

📦 Tuplas

Características:()

  • Ordenadas - Mantienen el orden de inserción

  • Inmutables - No se pueden modificar después de crearlas

  • Permiten duplicados - Pueden tener elementos repetidos

  • Indexadas - Se accede por posición

Ejemplo (Python):

python
coordenadas = (40.7128, -74.0060)
# coordenadas[0] = 50.0  # Esto daría error (inmutable)
print(coordenadas[1])  # Output: -74.0060

📊 Comparación rápida:

TipoOrdenadoMutableDuplicadosUso típico
Lista []✅ Sí✅ Sí✅ SíColecciones ordenadas
Conjunto{}❌ No✅ Sí❌ NoElementos únicos
Diccionario{:}❌ No*✅ Sí❌ Claves únicasDatos estructurados
Tupla()✅ Sí❌ No✅ SíDatos inmutables

*Los diccionarios en Python 3.7+ mantienen el orden de inserción

¿Te gustaría que profundice en alguno en particular?

Resumen de Colecciones en Python

1. Listas (Arrays)[]

python
# Crear lista
frutas = ["manzana", "banana", "cereza"]

# Agregar elementos
frutas.append("naranja")          # ["manzana", "banana", "cereza", "naranja"]
frutas.insert(1, "uva")           # ["manzana", "uva", "banana", "cereza", "naranja"]

# Eliminar elementos
frutas.remove("banana")           # Elimina "banana"
elemento = frutas.pop(2)          # Elimina y retorna elemento en posición 2
del frutas[0]                     # Elimina elemento en posición 0

# Modificar elementos
frutas[0] = "pera"                # Cambia primer elemento a "pera"

# Acceder elementos
print(frutas[1])                  # Accede al segundo elemento
print(frutas[-1])                 # Accede al último elemento

# Otras operaciones
print(len(frutas))                # Longitud: 3
print(frutas.count("manzana"))    # Cuenta apariciones: 1
print(frutas.index("cereza"))     # Posición: 2
frutas.sort()                     # Ordena alfabéticamente
frutas.reverse()                  # Invierte orden
sublista = frutas[1:3]            # Sublista desde posición 1 hasta 2

2. Conjuntos (Sets){}

python
# Crear conjunto
colores = {"rojo", "verde", "azul"}

# Agregar elementos
colores.add("amarillo")           # {"rojo", "verde", "azul", "amarillo"}
colores.update(["negro", "blanco"]) # Agrega múltiples elementos

# Eliminar elementos
colores.remove("verde")           # Elimina "verde" (error si no existe)
colores.discard("rosa")           # Elimina "rosa" (no da error si no existe)
elemento = colores.pop()          # Elimina y retorna un elemento aleatorio

# Los sets NO permiten modificación directa de elementos
# Los sets NO permiten acceso por índice (son desordenados)

# Otras operaciones
print(len(colores))               # Longitud: 4
print("rojo" in colores)          # Verifica existencia: True

3. Diccionarios{:}

python
# Crear diccionario
persona = {"nombre": "Ana", "edad": 25, "ciudad": "Madrid"}

# Agregar elementos
persona["profesion"] = "ingeniera"    # Agrega nueva clave-valor
persona.update({"salario": 30000})    # Agrega múltiples elementos

# Eliminar elementos
del persona["edad"]                # Elimina clave "edad"
valor = persona.pop("ciudad")      # Elimina y retorna valor de "ciudad"
persona.clear()                    # Elimina todos los elementos

# Modificar elementos
persona["nombre"] = "Carlos"       # Modifica valor de "nombre"

# Acceder elementos
print(persona["nombre"])           # Accede por clave: "Carlos"
print(persona.get("edad", "N/A"))  # Accede con valor por defecto: "N/A"

# Otras operaciones
print(len(persona))                # Longitud: 2
print(persona.keys())              # Todas las claves
print(persona.values())            # Todos los valores
print(persona.items())             # Todos los pares clave-valor

4. Tuplas()

python
# Crear tupla (inmutable)
coordenadas = (10, 20, 30)

# Las tuplas NO permiten agregar, eliminar o modificar elementos después de creadas

# Acceder elementos
print(coordenadas[0])              # Accede al primer elemento: 10
print(coordenadas[1:3])            # Slicing: (20, 30)

# Otras operaciones
print(len(coordenadas))            # Longitud: 3
print(coordenadas.count(20))       # Cuenta apariciones: 1
print(coordenadas.index(30))       # Posición: 2

Operaciones Comunes con Ejemplos

python
# Slicing
numeros = [1, 2, 3, 4, 5, 6]
print(numeros[1:4])    # [2, 3, 4]
print(numeros[:3])     # [1, 2, 3]
print(numeros[3:])     # [4, 5, 6]
print(numeros[::2])    # [1, 3, 5] (cada 2 elementos)

# Ordenamiento
lista = [3, 1, 4, 1, 5, 9, 2]
lista.sort()           # [1, 1, 2, 3, 4, 5, 9]
lista.sort(reverse=True) # [9, 5, 4, 3, 2, 1, 1]

# Búsqueda
if "manzana" in frutas:
    print("Manzana encontrada en posición:", frutas.index("manzana"))

Este resumen cubre las operaciones básicas de las cuatro colecciones principales en Python con ejemplos concisos y prácticos.

Comentarios

Entradas populares de este blog

¿Qué es un Closure?

Calculadora de edad

Funciones en Python: con y sin paréntesis