Python中如何修改格式化代码实现定点数补前导零对齐?
解决Python格式化补前导零的问题
你只需要修改字符串格式化的格式说明符,给每个数值加上固定宽度+前导零填充的规则,就能实现你想要的整齐对齐样式。
修改后的代码:
out.write('{0}\t{1[0]:06.3f}\t{1[1]:06.3f}\t{1[2]:06.3f}\n'.format(ts.frame, pos))
关键规则解释:
06.3f是核心修改点,拆解来看:0:指定当数值总长度不足设定宽度时,用前导零填充(默认是空格填充)6:设定数值的总显示宽度(包含小数点和小数部分)—— 因为你需要的是「两位整数+1个小数点+三位小数」,刚好是6个字符(比如04.896正好占6位).3f:保留三位小数,这是你原本已有的规则,继续保留即可
效果验证:
比如输入数值 4.896,用 :06.3f 格式化后会变成 04.896;输入 0.164 会变成 00.164,完全匹配你想要的目标样式。
内容的提问来源于stack exchange,提问作者D.H.N
相关产品推荐
相关产品推荐

