python 中如何计算分数

python 中如何计算分数

作者:William Gu发布时间:2026-01-06阅读时长:0 分钟阅读次数:42

用户关注问题

Q
如何在 Python 中表示分数?

我想在 Python 里使用分数进行精确计算,应该怎么表示分数?

A

使用 fractions 模块表示分数

Python 提供了 fractions 模块,里面的 Fraction 类可以用来表示分数。你可以通过传入分子和分母来创建分数对象,例如:Fraction(3, 4) 表示三分之四。使用这个类进行计算时,会保持分数的精确表示,而不是转换成浮点数。

Q
Python 中如何进行分数的加减乘除运算?

用了 fractions 模块创建分数后,如何进行分数的加减乘除操作?

A

直接对 Fraction 对象进行算术运算

Fraction 对象能够直接支持加(+)、减(-)、乘(*)、除(/)运算,比如两个分数 f1 和 f2,可以用 f1 + f2、f1 - f2、f1 * f2、f1 / f2 来得到新的 Fraction 对象,保持运算的精确性,避免浮点数误差。

Q
如何将浮点数转换为分数类型?

我有一个浮点数,需要将它转换成分数,Python 有什么方法吗?

A

使用 Fraction.from_float() 方法

可以利用 Fraction 类的 from_float() 方法将浮点数转换成分数,例如:Fraction.from_float(0.75) 会得到 Fraction(3,4)。或者直接将浮点数字作为参数传给 Fraction(),Python 会自动转换,不过后者可能受浮点精度限制。