KCh*_*oux 17 python padding string-formatting
我需要在python中做一些小数位格式化.优选地,浮点值应始终至少显示起始0和小数点后一位.例:
Input: 0
Output: 0.0
Run Code Online (Sandbox Code Playgroud)
具有更多小数位的值应继续显示它们,直到它变为4.所以:
Input: 65.53
Output: 65.53
Input: 40.355435
Output: 40.3554
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用{0.4f}将其打印到小数点后四位,但它会填充不需要的0.是否有格式化代码告诉它打印出一定数量的小数,但如果没有数据则将它们留空?我相信C#通过以下方式完成此任务:
floatValue.ToString("0.0###")
Run Code Online (Sandbox Code Playgroud)
#符号代表可以留空的地方.
Bou*_*oud 19
您要求的内容应该通过round函数等舍入方法来解决,并让浮点数自然地显示其字符串表示.
>>> round(65.53, 4)
'65.53'
>>> round(40.355435, 4)
'40.3554'
>>> round(0, 4)
'0.0'
Run Code Online (Sandbox Code Playgroud)
对不起,我能做的最好:
' {:0.4f}'.format(1./2.).rstrip('0')
Run Code Online (Sandbox Code Playgroud)
更正:
ff=1./2.
' {:0.4f}'.format(ff).rstrip('0')+'0'[0:(ff%1==0)]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15407 次 |
| 最近记录: |