Estructuras de datos esenciales
Python tiene estructuras de datos integradas muy utiles para trabajar con datos.
Listas
# Lista: coleccion ordenada y mutable
numeros = [1, 2, 3, 4, 5]
nombres = ['Ana', 'Luis', 'Maria']
mixta = [1, 'texto', True, 3.14]
# Operaciones comunes
numeros.append(6) # Agregar
numeros.pop() # Eliminar ultimo
numeros[0] # Acceder: 1
numeros[-1] # Ultimo: 5
numeros[1:3] # Slice: [2, 3]
len(numeros) # Longitud: 5
# List comprehension
cuadrados = [x**2 for x in range(10)]
# [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
pares = [x for x in range(20) if x % 2 == 0]
# [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
Diccionarios
# Diccionario: pares clave-valor
persona = {
'nombre': 'Maria',
'edad': 28,
'ciudad': 'Madrid'
}
# Acceso
persona['nombre'] # 'Maria'
persona.get('email', 'N/A') # 'N/A' (default)
# Modificar
persona['edad'] = 29
persona['email'] = '[email protected]'
# Iterar
for key, value in persona.items():
print(f'{key}: {value}')
# Dict comprehension
cuadrados = {x: x**2 for x in range(5)}
# {0: 0, 1: 1, 2: 4, 3: 9, 4: 16}
Tuplas y Sets
# Tupla: inmutable (no se puede cambiar)
coordenadas = (10.5, 20.3)
x, y = coordenadas # Desempaquetado
# Set: valores unicos, sin orden
colores = {'rojo', 'verde', 'azul'}
colores.add('amarillo')
colores.discard('rojo')
# Eliminar duplicados
lista_con_duplicados = [1, 2, 2, 3, 3, 3]
unicos = list(set(lista_con_duplicados)) # [1, 2, 3]
Cuando usar cada estructura
| Estructura | Uso |
|---|---|
| Lista | Coleccion ordenada que cambia |
| Diccionario | Acceso por clave, datos relacionados |
| Tupla | Datos fijos, coordenadas, retornos |
| Set | Valores unicos, operaciones de conjuntos |