在 Ubuntu 上開發程式的環境是 2.5 ,但網頁伺服器是用 Fedora Core 5 ,所以它的版本還在 2.4 ,已經跑過無數個程式了,一直都是相容的,直到今天。
在 2.5 中,抓日期物件如下:
dateobj = datetime.datetime.strptime('2007-1-1', '%Y-%m-%d').date()
但在 2.4 中,卻不能這樣用,因為 datetime.datetime 並沒有 strptime 函式。那麼 strptime 函式在那裡呢!在 time 下。所以要改成如下的寫法:
dateobj = datetime.date(*time.strptime('2007-1-1', '%Y-%m-%d')[:3])
這樣在 2.4 及 2.5 下才能同時正確執行。
不過,我認為 2.5 改得好,因為我一直認為 time 物件是用來抓時間用的,而 datetime 是用作時間日期格式轉換用的, strptime 放在 datetime.datetime 下比較適合。
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。