2016-12-29 93 views
0

我需要舍去,它应该是两位小数。
试过以下,python下舍入为2位小数

a = 28.266 
print round(a, 2) 

28.27

但预期值仅为28.26。

+0

您要截断。看看这里:http://stackoverflow.com/questions/8595973/truncate-to-3-decimals-in-python – zinjaai

回答

3

好像你需要的floor

import math 
math.floor(a * 100)/100.0 

# 28.26 
2

只是试试这个:

import math 
a = 28.266 
print((math.floor(a * 100))/100.0) 

输出:

28.26 
+0

OP提到他想'28.26'。 – Uriel

+0

哦,我的坏,我会编辑我的答案。 – Inconnu

1

看来你要截断,而不是四舍五入:

一个简单的w ay将结合地板分区和正常分区:

>>> a = 28.266 
>>> a // 0.01/100 
28.26 
+0

我们可以像下降到“0.01”一样说 –