2012-09-14 52 views
0

我有一個字符串變量包含.10我想格式化它打印出0.10。 有沒有一種方法,我可以以某種方式相應地將所需的字符串格式傳遞給變量和變量格式。
Python中傳遞格式說明符

ex。

0.10變爲0.10(格式化0.00)
0.10變得0.100(格式化0.000)
50.10變得50.1(格式化0.0)

蟒,我使用是2.4的版本。

回答

2

如果你想要的格式是變量:

>>> '%.*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' 

參考:Python 2.4.4, §2.3.6.2 String Formatting Operations

1
>>> '%.2f' % (float('.10'),) 
'0.10' 
+0

爲Python 2.4,這是正確的,但我不認爲你需要把它放在一個元組...對於未來的用戶,如果您使用的是2.6或更高版本,最好使用str.format - 因爲我相信這種格式化現在已被棄用。 –

+0

您不需要將非元組值放入元組中;這只是我對習慣的強制。 –