- 分数运算
- 问题:
- 涉及到分数计算的问题
- 解决方案:
- fractions 模块可以用来执行包含分数的数学运算。比如:
from fractions import Fraction
a = Fraction(5, 4)
b = Fraction(7, 16)
print(a + b) # 27/16
print(a*b) # 35/64
c = a*b
print(c.numerator) # 35
print(c.denominator) # 64
print(float(c)) # 0.546875
print(c.limit_denominator(8)) # 4/7
x = 3.75
y = Fraction(*x.as_integer_ratio()) # Fraction(15, 4)
print(y) # 15/4
- 讨论: 大多数程序中不会出现分数的计算,有时候还是需要用到的。比如,在一个允许接受分数形式的测试单位以分数形式执行运算的程序中,直接使用分数可以减少手动转换为小数或者浮点数 的工作。