首页 > 解决方案 > 在python中对数字进行四舍五入时如何保持尾随0?

问题描述

例如,我想保留小数点后两位小数并保留尾随 0。17.7 我希望它是 17.70 或 22.00。所以,我有一个数字列表,我想返回最大值和四舍五入,以使其符合该格式。

list = [11, 12.3, 14, 200.33, 49.08, 207.2]

a = max(round(list), 2)

这就是我所做的,但它仍然没有将所有点分别四舍五入并保留 2 位小数。我不拘泥于保持在最大范围内,我只是在试验。如果有人对 NumPy 有任何建议或方法,请告诉我。

标签: pythonnumpydecimalrounding

解决方案


简短的回答,你不能。除非您修改基础对象,否则您无法更改其表示。您可能想要的是一个格式如下的字符串。这里有两种方法:

my_list = [11, 12.3, 14, 200.33, 49.08, 207.2]
['%.2f'%i for i in my_list]

输出:

['11.00', '12.30', '14.00', '200.33', '49.08', '207.20']

f 字符串(python > 3.6):

[f'{i:.2f}' for i in my_list]

注意。不要调用列表“列表”,这已经是 python 内置


推荐阅读