>>> import fractions
>>> fractions.Fraction("1")
Fraction(1, 1)
>>> fractions.Fraction("1/2")
Fraction(1, 2)
К сожалению, конструктор fraction
не обрабатывает смешанные дроби ("1 1/2"), поэтому вам придется написать что-то для их анализа самостоятельно. Вы можете сохранить их в базе данных либо с помощью настраиваемого поля, либо приведя их к float
.