2012-05-07 94 views
2

請讓我擺脫我的痛苦。以下示例似乎是使用y而不是y,然後使用mPython數字格式混淆

>>> m=8 
>>> y=11 
>>> print '20{0:02d}{0:02d}01'.format(y, m) 
20111101 

我已經通過儘可能多的文件,因爲我可以,但想不出什麼將是與舊的程序相對比較簡單:

>>> print '20%02d%02d01' % (y, m) 
20110801 

如果有人能解釋其中I我錯了我會很感激。

+1

''20 {0:02d} {0:02d} 01''應該是''20 {0:02d} {1:02d} 01'' –

+2

更簡單:''20 {:02d} {: 02d} 01'' – akaRem

回答

6

這會做你想要什麼:

print '20{0:02d}{1:02d}01'.format(y, m) 

你提到的第一個參數的兩倍。

+0

Doh!謝謝。我反覆閱讀Python文檔,但仍然錯過了這一點。 –

+0

在那裏,做到了這一點:-) – Levon

+1

你可以忽略0和1的索引(儘管保留冒號)。如果您想多次重複使用參數,或者您想對其重新排序,則只需要它們。 – yak

3
>>> print '20{0:02d}{1:02d}01'.format(y, m) 

您需要使用arg列表中的下一個參數。