格式化输出单个数字的时候,可以使用内置的 函数,比如:
>>> x = 1234.56789
>>> # Two decimal places of accuracy
>>> format(x, '0.2f') #无空格,小数保留2位
'1234.57'
>>> # Right justified in 10 chars, one-digit accuracy
>>> format(x, '>10.1f') #数字输出靠右,总计长度为10,小数保留1位
' 1234.6'
>>> # Left justified
>>> format(x, '<10.1f') #数字输出靠左,总计长度为10,小数保留1位
'1234.6 '
>>> # Centered
>>> format(x, '^10.1f') #数字输出靠中,小数保留2位
' 1234.6 '
>>> # Inclusion of thousands separator
>>> format(x, ',') #指定逗号位数字的千分位分隔符
'1,234.56789'
>>> format(x, '0,.1f') #无占位输出,用逗号作为分隔符,保留1位小数
'1,234.6'
>>>
########################################################
# Note:
#
当时指定的小数位比真实小数位少时默认会显示四舍五入好的效果,与round的效果是相同的
########################################################
如果你想使用指数记法,将f改成e或者E(取决于指数输出的大小写形式)。比如:
1 >>> format(x, 'e') #指定为科学计数法
2 '1.234568e+03'
3 >>> format(x, '0.2E') #指定科学计数法和小数表达式的小数位数
4 '1.23E+03'
5 >>>
同时指定宽度和精度的一般形式是 , 其中 和 为整数,?代表可选部分。 同样的格式也被用在字符串的 方法中。比如:
1 >>> 'The value is {:0,.2f}'.format(x) #注意在用于格式化时的数字格式化指定时需要用:开头表征
2 'The value is 1,234.57'
3 >>>