2014-02-26 53 views
0

this答案的樣子,我可以很容易獲得基於RFC 3339的時間作爲它的代碼所示:獲取RFC 3339時間戳一天前

d = datetime.datetime.utcnow() # <-- get time in UTC 
print d.isoformat("T") + "Z" 

我不知道我怎麼會得到相同的格式的時間,但恰好在一天前。它本質上是day-1,但我不知道如何做到這一點。

回答

3

你可以得到一個前一天到x有:

x = x + datetime.timedelta(days = -1) 

下面的記錄表明這個動作:

pax> python 
Python 2.7.3 (default, Jan 2 2013, 16:53:07) 
[GCC 4.7.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 

>>> import datetime 
>>> d = datetime.datetime.utcnow() 
>>> d 
datetime.datetime(2014, 2, 26, 1, 11, 1, 536396) 

>>> print d.isoformat("T") + "Z" 
2014-02-26T01:11:01.536396Z 

>>> d = d + datetime.timedelta(days=-1) 
>>> d 
datetime.datetime(2014, 2, 25, 1, 11, 1, 536396) 

>>> print d.isoformat("T") + "Z" 
2014-02-25T01:11:01.536396Z 
+0

注:在一般情況下,一天前可能會從24小時不同。雖然它們在UTC時區是一樣的。 – jfs