Python:格式化十进制

Python:格式化十进制,python,Python,每个浮点数的格式应确保只返回前两位小数。您不需要检查输入是否为有效数字,因为测试中只使用有效数字 不要把数字四舍五入!只要在小数点后两位删掉就行了 正确的例子: 32.8493是32.84 14.3286等于14.32 不正确的示例(例如,如果您将数字四舍五入): 32.8493等于32.85 14.3286等于14.33 我不明白代码,为什么我们乘以100,除以100.0,有人能给我解释一下吗?我们乘以100的原因是我们可以用int()得到它的整数部分 如果数字最初是32.8493,numbe

每个浮点数的格式应确保只返回前两位小数。您不需要检查输入是否为有效数字,因为测试中只使用有效数字

不要把数字四舍五入!只要在小数点后两位删掉就行了

正确的例子:
32.8493是32.84
14.3286等于14.32

不正确的示例(例如,如果您将数字四舍五入):
32.8493等于32.85
14.3286等于14.33


我不明白代码,为什么我们乘以100,除以100.0,有人能给我解释一下吗?

我们乘以100的原因是我们可以用
int()得到它的整数部分


如果数字最初是
32.8493
number*100
3284.93
,并且
int(number*100)
丢弃分形以生成
3284
。然后除以100返回
32.84
,它在小数点后有所需的两位数。

32.8493*100
3284.93
int(3284.93)
is
3284
3284/100.0
32.84
int函数忽略小数点后的所有内容,因此您将乘以100以“保留”十分之一和百分之一,然后在int函数后除法以返回到其假定值。可能重复:
/100.0
建议使用Python 2,顺便说一句,您需要至少一个浮点值来获得浮点结果,而不是整数除法。如果您使用的是Python2,您需要升级到Python3,因为Python2不再受支持谢谢,这是可以理解的!!!!
def two_decimal_places(number):

    return int (number * 100) / 100.0