2015-11-07 70 views
1

我试图从26%的年率中获得每日费率。Python自动舍入十进制数

在Python,1.26**(1/365)给我1.0

在Excel中,1.26^(1/365)给我1.000633,这就是我想要的。

为什么Python这样做,我怎样才能得到更准确的结果?

+1

如果你想你的计算比较,您的银行的考虑,有时(即不总是)一个财政年度假设账户有360天,一个月30天。 – user1016274

+0

可能的重复[如何强制部门浮点?司保持舍入到0](http://stackoverflow.com/questions/1267869/how-can-i-force-division-to-be-floating-point-division-keeps-rounding-down-to-0) –

回答

6

您正在使用Python 2.x,因此1/365为零(两个整数的除法返回一个整数)。任何到零的权力是1.

您需要使用真正的划分;你可以把其中一个号码一个浮点数来触发此:

>>> 1.26 ** (1.0/365) 
1.000633383299703