miércoles, 15 de julio de 2026

Día 16 — Herencia: reutilizando y extendiendo clases

La herencia permite crear una nueva clase a partir de otra ya existente, heredando automáticamente todos sus atributos y métodos. La clase que hereda se llama "clase hija", y la original "clase padre". Esto evita duplicar código cuando varias clases comparten comportamiento común.

Además, la clase hija puede sobreescribir cualquier método heredado para darle un comportamiento distinto, una técnica conocida como polimorfismo. Este concepto es la base de frameworks tan populares como Django, donde casi todo se construye a partir de clases que heredan funcionalidad predefinida.

Código de ejemplo:

class Animal: def __init__(self, nombre): self.nombre = nombre def hablar(self): return "..." class Perro(Animal): def hablar(self): return f"{self.nombre} dice: ¡Guau!" class Gato(Animal): def hablar(self): return f"{self.nombre} dice: ¡Miau!" rex = Perro("Rex") print(rex.hablar()) # Rex dice: ¡Guau!




martes, 14 de julio de 2026

Día 15 — Clases: introducción a la programación orientada a objetos

La programación orientada a objetos (POO) es un paradigma que modela el código a partir de "objetos" que combinan datos y comportamiento, de forma similar a como funcionan los elementos del mundo real. Una clase actúa como el molde o plantilla, y un objeto es cada instancia concreta creada a partir de ese molde.

El método __init__ es el constructor: se ejecuta automáticamente cada vez que se crea un nuevo objeto, y normalmente se usa para inicializar sus atributos. El parámetro self hace referencia al propio objeto dentro de cualquier método de la clase, y siempre debe aparecer como primer parámetro.

Código de ejemplo:

class Persona: def __init__(self, nombre, edad): self.nombre = nombre self.edad = edad def presentarse(self): return f"Soy {self.nombre} y tengo {self.edad} años" jose = Persona("José", 35) print(jose.presentarse()) print(jose.nombre) # Acceso directo al atributo




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}")