Fraction almacena números racionales como enteros normalizados. Es útil en proporciones, medidas discretas y algoritmos donde 1/3 debe seguir siendo exactamente un tercio.
Ejemplo práctico
from fractions import Fraction
ratio = Fraction(3, 8) + Fraction(1, 4)
from_text = Fraction("0.125")
print(ratio)
print(from_text)
assert ratio == Fraction(5, 8)
Construye desde la fuente correcta
Prefiere enteros, otra fracción o una cadena decimal. Crear desde un float conserva su valor binario exacto y puede producir un denominador inesperado.
La exactitud tiene un coste
Las fracciones pueden crecer durante las operaciones y cuestan más que los floats. Usa limit_denominator() solo si aceptas aproximación. Para dinero, las reglas decimales suelen hacer que Decimal sea más claro.
Sigue aprendiendo
Consulta también Decimal en Python para Cálculos Monetarios y statistics en Python: Media, Mediana y Cuantiles. A documentación oficial de Python, consultada el 22 de julio de 2026, detalla la API y el comportamiento entre versiones.