lunes, 13 de julio de 2026

Día 14 — Resumen: dos semanas de Python completadas

Tras dos semanas de aprendizaje constante, ya dominas los fundamentos sólidos del lenguaje: variables, tipos de datos, condicionales, bucles, listas, diccionarios, tuplas, sets, funciones y argumentos flexibles. Este es el momento ideal para combinar todo lo aprendido en un único ejercicio práctico que demuestre tu progreso.

A partir de la próxima semana entrarás en terreno más avanzado: programación orientada a objetos, manejo de errores y trabajo con archivos. Estos conceptos son los que marcan la diferencia entre escribir scripts simples y construir aplicaciones robustas.

Código de ejemplo:

datos = {"nombre": "tú", "nivel": 2} numeros = [1, 2, 3, 4, 5] cuadrados = [n ** 2 for n in numeros] pares = {x for x in numeros if x % 2 == 0} def analizar(*valores): return sum(valores) / len(valores) print(f"Media: {analizar(*numeros)}") # Media: 3.0 print(f"Cuadrados: {cuadrados}") print(f"Pares: {pares}")




domingo, 12 de julio de 2026

Día 13 — *args y **kwargs: funciones con argumentos flexibles

A veces no sabemos de antemano cuántos argumentos recibirá una función. Para esos casos, Python ofrece *args, que agrupa cualquier cantidad de argumentos posicionales en una tupla, y **kwargs, que agrupa argumentos con nombre en un diccionario.

Estas herramientas son ampliamente utilizadas en librerías y frameworks profesionales como Flask, FastAPI o Django, donde las funciones necesitan aceptar configuraciones muy variables sin tener que predefinir cada parámetro posible.

Código de ejemplo:

def suma(*numeros): return sum(numeros) print(suma(1, 2, 3, 4)) # 10 print(suma(5, 10)) # 15 def crear_perfil(**datos): for clave, valor in datos.items(): print(f"{clave}: {valor}") crear_perfil(nombre="José", ciudad="Sevilla", edad=35)




jueves, 9 de julio de 2026

Día 11 — List comprehension: listas potentes en una línea

Las list comprehensions son una característica distintiva de Python que permite crear listas de forma compacta y legible, sustituyendo bucles for tradicionales de varias líneas por una sola expresión. Además de ser más cortas, suelen ejecutarse más rápido que el equivalente con bucle explícito.

La sintaxis básica es [expresión for elemento in iterable], y se puede añadir una condición opcional al final con if para filtrar qué elementos se incluyen en el resultado final.

Código de ejemplo:

# Forma tradicional cuadrados = [] for n in range(1, 6): cuadrados.append(n ** 2) # Con list comprehension cuadrados = [n ** 2 for n in range(1, 6)] print(cuadrados) # [1, 4, 9, 16, 25] # Con condición pares = [n for n in range(20) if n % 2 == 0] print(pares) # [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]