2013-11-10 77 views

回答

1

使用datetime模塊。如果你有一個datetime.datetime對象Adatetime.date對象B,所不同的是:

A.date() - B 

試試吧;-)

例子:

>>> from datetime import datetime, date 
>>> A = datetime.strptime("2013-11-09 18:17:53.196126", "%Y-%m-%d %H:%M:%S.%f") 
>>> B = date(*map(int, "2013-11-01".split("-"))) 
>>> print A 
2013-11-09 18:17:53.196126 
>>> print B 
2013-11-01 
>>> print A.date() - B 
8 days, 0:00:00 
+1

,與上面的例子...我試過它沒有工作..did它爲你工作? – user2955256

+0

@ user2955256,對不起,我不知道你試過了什麼。我做了一個編輯,以顯示它是如何工作的。 –

+0

'TypeError:Python 2上的 - :'datetime.date'和'datetime.datetime''不支持的操作數類型 – jfs

2

首先,你必須改變輸入到python知道的類型 - datetime。然後使用內置函數。

>>> from datetime import datetime 
>>> A = datetime.strptime('2013-11-01', '%Y-%m-%d') 
>>> A 
datetime.datetime(2013, 11, 1, 0, 0) 
>>> B = datetime.strptime('2013-11-09 18:17:53.196126', '%Y-%m-%d %H:%M:%S.%f') 
>>> B 
datetime.datetime(2013, 11, 9, 18, 17, 53, 196126) 
>>> diff = B - A 
>>> diff 
datetime.timedelta(8, 65873, 196126) 
>>> diff.total_seconds() 
757073.196126 
>>> diff.total_seconds()/(60 * 60 * 24) 
8.762421251458333 
+0

將整天作爲一個整數:'diff.days' – jfs