Python 2.7.5+
新风格的'{X.Yf}'格式化方法似乎与旧风格的'%X.Yf'格式化方法不同。有人能解释一下吗?
>>> '%8.3f' % (0.98567)
' 0.986'
>>> '%8.3f' % (1.98567)
' 1.986'
>>> '{num:8.3}'.format(num=0.98567)
' 0.986'
>>> '{num:8.3}'.format(num=1.98567)
' 1.99'
请注意,旧样式在小数点后显示3位数字,但新样式有时打印2位数字,有时打印3位数字。我是否犯了一些愚蠢的错误?