Python 标准库中的 Fraction 对象支持分数运算,还提供了用于计算最大公约数的 gcd() 函数和高精度实数类 Decimal。
1 分数
from fractions import Fraction
from math import gcd
x = Fraction(3, 5)
y = Fraction(3, 7)
z = Fraction(16, 24)
print(x, y, z)
print(x ** 2) # 幂运算
print(z.numerator) # 查看分子
print(x.denominator) # 查看分母
print(x + y) # 支持分数间的四则运算,自动进行通分
print(x * 2) # 分数与数字之间的运算
print(Fraction(3.5)) # 把实数转换为分数
print(gcd(16, 24))
2 高精度实数
from _decimal import Decimal
print(1 / 9, 1 / 3)
print(Decimal(1 / 9), Decimal(1 / 3))
print(Decimal(1 / 9) + Decimal(1 / 3))