1) Módulo: unidad mínima de organización
Cada módulo debe agrupar una responsabilidad coherente.
Si tienes funciones de validación, cálculo y persistencia en un solo archivo, el acoplamiento crece muy rápido.
Separar por módulos (`validators.py`, `services.py`, `repository.py`) hace explícita la arquitectura.
No se trata de crear muchos archivos porque sí, sino de mantener cohesión interna alta y dependencias claras.
import math
radio = 3
area = math.pi * radio ** 2
print(round(area, 2))