2016-08-02 201 views
1

我目前正在嘗試將秒數轉換成分鐘和秒錶示法。我正在使用divmod並嘗試將結果轉換爲日期時間值。我有以下代碼:datetime.strptime()返回一個格式錯誤%f

from datetime import datetime, timedelta 
processtime = 69.009 
m, s = divmod(processtime, 60) 
m= str(m) 
m=m[:1] 
s= str(s) 
s=s[:5] 
processstring= m+ ' ' + s 
datetimeprocess = datetime.strptime(processstring, "%M %S.f") 

但是每次我這樣做的時候,我得到這個錯誤:

ValueError: time data '1 9.009' does not match format '%M %S.f' 

我確信我已經匹配的格式,我想不出什麼問題是。

回答

1

你錯過了之前%f

datetimeprocess = datetime.strptime(processstring, "%M %S.%f") 

測試結果:

>>> from datetime import datetime, timedelta 
>>> processstring = '1 9.009' 
>>> datetimeprocess = datetime.strptime(processstring, "%M %S.%f") 
>>> print datetimeprocess 
1900-01-01 00:01:09.009000 
>>> 
+0

天哪,謝謝,我是個白癡! – Kprakash

+0

@Kprakash不客氣。有時我們只需要第二雙眼睛:) – pah