使用python在方程中使用分数



我正试图用python编写这个等式:

(1/100)*((102/65520)*x - 1)*10

wolfram alpha链接

但我不知道如何应用分数才能得到正确的结果。

有人知道我该怎么写吗?

您使用的是'integer'除法,这是python 2中的默认除法,因此结果是四舍五入的(1/100等于0,nooooo!)。

你也让这个部门变得"飘忽不定"。我能想到两种解决方案:

1)使股息直接变成浮动

(1.0/100)*((102.0/65520)*x - 1)*10

您也可以使用float()将整数强制转换为浮点值。那么,float(102)相当于102.0

(float(1)/100)*(float(102)/65520)*x - 1)*10

2)使用浮点除法(Python 3中的默认值):

from future import __division__

现在/是浮点除法,您的代码行按原样工作。注意:您应该使用"//"进行整数除法,以防万一。

第二个学分:我怎样才能强迫除法成为浮点?Division保持四舍五入到0

最新更新