Aprende Python con animaciones matemáticas
Cada lección construye un patrón del canal en un script corto, línea a línea: primero arrays y bucles, luego azar y recursión, y después simulaciones y cuadrículas. Cada una termina con ejercicios, un cuestionario y tarjetas de repaso. El código y sus comentarios están en inglés, como en la mayoría de los proyectos; las explicaciones, en español.
Qué necesitas
Python 3 y dos bibliotecas: pip install numpy matplotlib. Ejecuta cada script con python name.py.
Principiante
Lección 1 Arrays y ángulos con el patrón «Ángulo áureo» arrays de numpy con np.arange · operaciones sobre todo un array a la vez · radianes, np.cos y np.sin · de un ángulo y una distancia a x e y · un gráfico de dispersión coloreado según un valor
Lección 2 Bucles y restos con el patrón «Tabla de multiplicar en un círculo» un bucle for sobre parejas con zip · el resto % y los ángulos que dan la vuelta · una línea entre dos puntos con plt.plot · explorar cambiando un solo parámetro
Lección 3 Azar y recuento con el patrón «Tablero de Galton» números aleatorios con np.random.default_rng · True y False contados como 1 y 0 · contar con np.bincount · una lista por comprensión · una simulación comprobada con una fórmula
Intermedio
Lección 4 Bucles que recuerdan con el patrón «Juego del caos» un bucle que lleva su estado de un paso al siguiente · números enteros aleatorios con rng.integers · un bucle while para una condición · arrays de puntos y slicing · np.column_stack
Lección 5 Fórmulas sobre arrays con el patrón «Ola de péndulos» una fórmula de física aplicada a todo un array · np.round y print para una comprobación rápida · varios gráficos uno al lado de otro con plt.subplots · f-strings · la fase: en qué punto de su oscilación está un péndulo
Lección 6 Funciones y recursión con el patrón «Carrera de ordenamiento» funciones, y pasar una función como valor · la recursión: una función que se llama a sí misma sobre partes más pequeñas · un contador guardado en un diccionario · assert para comprobar un resultado · cómo crece el trabajo: n² frente a n·log n
Lección 7 Avanzar en el tiempo con el patrón «Bola en un anillo giratorio» una simulación: pasos de tiempo pequeños en un bucle while · vectores como arrays de numpy · el producto escalar y una reflexión · ángulos con np.arctan2, reducidos a una vuelta · break para salir de un bucle
Avanzado
Lección 8 Fuerzas e integración con el patrón «Órbitas de tres cuerpos» la gravedad de Newton como vectores · bucles anidados sobre parejas de cuerpos · el método de integración de salto de rana (leapfrog) · un array 3D: paso × cuerpo × coordenada · comprobar una simulación por lo que no debe cambiar
Lección 9 Cuadrículas y difusión con el patrón «Patrones de Turing» arrays 2D como una cuadrícula de celdas · np.roll para los vecinos, con bordes que dan la vuelta · el laplaciano: una celda frente a sus vecinas · actualizar toda una cuadrícula en una línea · mostrar un array con plt.imshow