在Python中保留分数(远离[保留]的部分]

问题描述 投票:-4回答:1

当我输入1-3 / 4时,它将被解释为2/4或1/2。如何使答案正确为1/4?

python syntax rational-number
1个回答
0
投票

标准库中的fractions模块是专门为此类问题设计的:-)

>>> from fractions import Fraction
>>> 1 - Fraction(3, 4)
Fraction(1, 4)

在您最初的工作中,代码是这样执行的:

>>> 1-3/4
0.25

除法具有较高的operator precedence,因此它在减法之前执行:

>>> 1 - (3/4)
0.25

对于整数,/运算符给出浮点结果(就像袖珍计算器一样)。这就是为什么您需要Fraction类以获得实际的分数结果的原因。

希望这会有所帮助:-)

© www.soinside.com 2019 - 2024. All rights reserved.