Aquí encontrarás todos los artículos de teoría de Python Intermedio en orden. Excepciones, clases, herencia, polimorfismo, pruebas y estructuras encadenadas explicados desde la experiencia real en FP2 de la ULPGC. Si vienes de Python Básico, sigue el orden — cada tema construye sobre el anterior.
-
Estructuras encadenadas en Python — LinkedList desde cero sin misterio
Las estructuras encadenadas en Python son el último bloque de FP2 y el que más peso tiene en el segundo parcial. La mayoría de la gente llega aquí con el concepto de nodo sin terminar de cuajar, entiende las palabras por separado pero no consigue visualizar cómo funciona la cadena entera. En este artículo vamos desde el principio absoluto: qué…
-
Pruebas en Python — caja blanca, caja negra, TDD y unittest desde cero
Las pruebas en Python son el tema de FP2 que más cuesta arrancar, no porque sea difícil técnicamente, sino porque al principio parece que estás aprendiendo a hacer algo que ya sabes hacer: comprobar si tu programa funciona. La diferencia es que en FP2 aprendes a hacerlo de forma sistemática, reproducible y profesional. En este artículo vamos desde cero, qué…
-
Iteradores y generadores en Python — cómo funciona el for por dentro
Los iteradores y generadores en Python son de esos temas de FP2 que al principio parecen un concepto abstracto y difícil de visualizar, y que de repente hacen clic cuando entiendes que llevas usándolos desde el primer día sin saberlo. Cada vez que escribes un for en Python estás usando un iterador. En este artículo vemos qué hay detrás de…
-
Sobrecarga de operadores en Python — métodos mágicos para clases propias
La sobrecarga de operadores en Python permite que tus clases propias funcionen con los operadores habituales (+, -, *, ==, <, >) igual que los tipos predefinidos. En FP2 es el tema que más confunde porque mezcla métodos mágicos, herencia y polimorfismo en un mismo concepto. En este artículo lo vemos todo con una clase Vector2D que construimos paso a…
-
Herencia y polimorfismo en Python — super(), override y clases abstractas
La herencia en Python es el mecanismo que permite crear nuevas clases a partir de clases existentes. En vez de escribir el mismo código dos veces, defines lo común en una clase base y lo específico en las subclases. En este artículo vemos herencia, super(), override, polimorfismo, clases abstractas e isinstance, todo lo que entra en FP2. ¿Qué es la…
-
Clases en Python — objetos, encapsulamiento y métodos mágicos desde cero
Las clases en Python son el mecanismo central de la Programación Orientada a Objetos (POO), el paradigma que domina FP2. Una clase es un molde para crear objetos que agrupan datos y comportamiento en una sola unidad. En este artículo vemos cómo definir clases, inicializarlas con __init__, proteger sus datos con encapsulamiento y dar representaciones útiles con los métodos mágicos…
-
Excepciones en Python — try, except, raise y assert sin rodeos
Las excepciones en Python son el mecanismo que permite a un programa gestionar situaciones inesperadas sin romperse. En FP1 aprendiste a prevenir errores con if/else. En FP2 das un paso más, aprendes a capturarlos cuando ocurren y a lanzarlos tú mismo cuando es necesario. En este artículo vemos todo: try/except, excepciones específicas y genéricas, finally, raise y assert. ¿Qué son…
