gpt4 book ai didi

python - 如何将 float 列表中的每个项目四舍五入到小数点后 2 位?

转载 作者:IT老高 更新时间:2023-10-28 21:46:32 26 4
gpt4 key购买 nike

我有一个包含浮点值的列表,但它们太详细而无法继续。我知道我们可以使用 ("%.f"% variable) 运算符来缩短它们,例如:

result = [359.70000000000005]
result = "%.2f" % result
result = [359.70]

我的问题是如何在不使用迭代器的情况下将值列表转换为四舍五入的等价物。我尝试了一些东西,但它抛出了 TypeError:

list = [0.30000000000000004, 0.5, 0.20000000000000001]
list = "%.2f" % list
TypeError: not all arguments converted during string formatting

我怎样才能提供一个干净的列表,例如:

list = [0.30, 0.5, 0.20]

最佳答案

"%.2f" 不返回 clean float 。它返回一个字符串,用两位小数表示这个 float 。

my_list = [0.30000000000000004, 0.5, 0.20000000000000001]
my_formatted_list = [ '%.2f' % elem for elem in my_list ]

返回:

['0.30', '0.50', '0.20']

另外,不要调用你的变量list。这是创建列表的保留字。使用其他名称,例如 my_list

如果你想获得 [0.30, 0.5, 0.20] (或者至少是最接近的 float ),你可以试试这个:

my_rounded_list = [ round(elem, 2) for elem in my_list ]

返回:

[0.29999999999999999, 0.5, 0.20000000000000001]

关于python - 如何将 float 列表中的每个项目四舍五入到小数点后 2 位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5326112/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com