Fraction armazena números racionais como inteiros normalizados. É útil em proporções, medidas discretas e algoritmos nos quais 1/3 precisa continuar sendo exatamente um terço.
Exemplo prático
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)
Construa a partir da fonte certa
Prefira inteiros, outra fração ou uma string decimal. Criar uma fração a partir de um float preserva o valor binário exato do float, que pode gerar um denominador inesperado.
Exatidão tem custo
Frações podem crescer durante operações e custam mais que floats. Use limit_denominator() apenas quando uma aproximação for aceitável. Para dinheiro, regras de arredondamento decimal costumam tornar Decimal a escolha mais clara.
Continue estudando
Leia também Decimal em Python para Cálculos Monetários e statistics em Python: Média, Mediana e Quantis. A documentação oficial do Python, consultada em 22 de julho de 2026, detalha a API e o comportamento entre versões.