python padding decimals with zeros

故事扮演 提交于 2020-12-16 07:56:06

问题


I'm looking for a way to pad the float decimals with zeros:

This one is my reference:

In [37]: '{:5.5}'.format(round(4.123456, 5))
Out[37]: '4.1235'

I have this:

In [38]: '{:5.5}'.format(4.1)
Out[38]: '  4.1'

But I would like to have this:

Out[38]: '4.1000'

回答1:


To format a floating point number with a given precision you should use the 'f' specifier. Without it the value is formatted as a string.

>>> '{:.4f}'.format(4.1)
'4.1000

You can also specify the minimum width of the complete output and the fill character:

>>> '{:07.4f}'.format(4.1)
'04.1000'

Here the output is padded on the left with zeros to be at least 7 characters.




回答2:


 '{:5.5f}'.format(4.1)

The f in the format string makes the difference here. You can read more about the formatters in here, important for this task is

'f' Fixed point. Displays the number as a fixed-point number. The default precision is 6.

But you wanted just 4 digits after the comma, so better is

>>> '{:.4f}'.format(4.1)
'4.1000'



回答3:


'{:5.5f}'.format(4.1)

pyformat.info



来源:https://stackoverflow.com/questions/38186526/python-padding-decimals-with-zeros

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!