Python在中传递格式说明符

Python在中传递格式说明符,python,string-formatting,Python,String Formatting,我有一个包含.10的字符串变量,我想格式化它以打印出0.10。 是否有一种方法可以将所需的字符串格式传递给变量,并相应地传递变量格式。 例如 .10变为0.10(格式0.00) .10变为0.100(格式化为0.000) 50.10变为50.1(格式0.0) 我使用的python版本是2.4。如果希望格式可变: >>> '%.2f' % (float('.10'),) '0.10' >>> '%.*f' % (1,.1) '0.1' >>>

我有一个包含.10的字符串变量,我想格式化它以打印出0.10。 是否有一种方法可以将所需的字符串格式传递给变量,并相应地传递变量格式。

例如

.10变为0.10(格式0.00)
.10变为0.100(格式化为0.000)
50.10变为50.1(格式0.0)


我使用的python版本是2.4。

如果希望格式可变:

>>> '%.2f' % (float('.10'),)
'0.10'
>>> '%.*f' % (1,.1)
'0.1'
>>> '%.*f' % (2,.1)
'0.10'
>>> '%.*f' % (3,.1)
'0.100'
>>> '%*.*f' % (5,3,.1)
'0.100'
>>> '%*.*f' % (5,2,.1)
' 0.10'
>>> '%*.*f' % (5,1,.1)
'  0.1'

参考:

如果希望格式可变:

>>> '%.*f' % (1,.1)
'0.1'
>>> '%.*f' % (2,.1)
'0.10'
>>> '%.*f' % (3,.1)
'0.100'
>>> '%*.*f' % (5,3,.1)
'0.100'
>>> '%*.*f' % (5,2,.1)
' 0.10'
>>> '%*.*f' % (5,1,.1)
'  0.1'

参考资料:

对于Python2.4,这是正确的,但我认为不需要将其放入元组中。。。对于未来的用户,如果您使用的是2.6或更高版本,那么最好使用str.format——因为我认为这种格式现在已经不受欢迎了;对于python 2.4来说,这是正确的,但我认为不需要把它放在元组中。。。对于未来的用户,如果您使用的是2.6或更高版本,那么最好使用str.format——因为我认为这种格式现在已经不受欢迎了;这对我来说只是习惯的力量。