>>> '{:0.10}'.format(1/3)
'0.3333333333'
>>> '{:0.10}'.format(100/3)
'33.33333333'
第一个给出小数点后10位数,第二个给出8位数。 “精确度”是指总数吗?如何仅控制小数点后的有效数字?
答案 0 :(得分:5)
您需要包含类型f
(浮点数)来控制小数位后的位数:
>>> '{:.10f}'.format(100/3)
'33.3333333333'
如果不指定类型,Python将回退到常规数字类型,并将数字四舍五入到指定的有效位数。来自documentation:
精度是一个十进制数,表示在用'f'和'F'格式化的浮点值的小数点后面应显示多少位数,或者用''格式化的浮点值的小数点前后g'或'G'。