格式字符串中的可变数字位数

Ema*_*ini 10 python

这是编写此格式化函数的简洁方法:

def percent(value,digits=0):
    return ('{0:.%d%%}' % digits).format(value)

>>> percent(0.1565)
'16%'

>>> percent(0.1565,2)
'15.65%'
Run Code Online (Sandbox Code Playgroud)

问题是格式化具有给定位数的数字,我不喜欢同时使用'%'运算符和格式方法.

eum*_*iro 30

我喜欢这一个:

'{0:.{1}%}'.format(value, digits)
Run Code Online (Sandbox Code Playgroud)

测试:

>> '{0:.{1}%}'.format(0.1565, 0)
'16%'
>> '{0:.{1}%}'.format(0.1565, 2)
'15.65%'
Run Code Online (Sandbox Code Playgroud)

  • @sotapme - 在链接页面上搜索"嵌套"一词. (4认同)