Python实现列表中元组内小数保留四位小数的方法
处理元组列表保留四位小数的方法
嘿,要解决这个问题其实挺简单的,咱们可以用列表推导式结合Python的round()函数来实现,既能完美保留原有的元组列表结构,又能把每个小数都精准保留四位。
直接上代码示例:
var = [('tiktok', 0.4125749944943275), ('tiktokers', 0.4125749944943275), ('bytedance', 0.2047896978823389), ('company', 0.20463320041549565)] # 生成处理后的新列表 processed_var = [(item[0], round(item[1], 4)) for item in var] print(processed_var)
运行这段代码后,你会得到这样的输出:
[('tiktok', 0.4126), ('tiktokers', 0.4126), ('bytedance', 0.2048), ('company', 0.2046)]
简单拆解一下逻辑:
round(num, 4)函数会把传入的小数num四舍五入到四位小数,完全匹配你的需求。- 列表推导式遍历原列表
var里的每个元组,保留第一个字符串元素不变,对第二个小数元素做四舍五入处理,最后重新组合成新元组,拼成新的列表。
如果你对round()的四舍五入规则有顾虑,也可以用字符串格式化的方式来实现,效果是一样的:
processed_var = [(item[0], float("{0:.4f}".format(item[1]))) for item in var]
内容的提问来源于stack exchange,提问作者notverygood




