2010-11-12 127 views
3

我有兩個日期時間字符串像這'2010-08-31 04:35:50.176725'和'2010-09-05 04:35:50.176725'。現在我的問題是如何計算兩個日期之間的秒數。我使用時間三角洲,但它在小時,分鐘的合作者的回報。我想在幾秒鐘內完成。日期時間到第二次轉換

+0

你的意思自Epoch以來的秒數? – unutbu 2010-11-12 12:20:36

+1

請看http://docs.python.org/library/time.html – soulseekah 2010-11-12 12:23:39

回答

14
import datetime as dt 
import time 

now=dt.datetime.now() 

時代定義爲1970-01-01 00:00:00 GMT。 你可以找到的秒數now和時代之間是這樣的:

print(time.mktime(now.timetuple())) 
# 1289565310.0 

或者,如果你想找到兩個dt.datetime對象之間的秒數:

now2=dt.datetime(2010,11,12,12,0,0) 

def timestamp(date): 
    return time.mktime(date.timetuple()) 

print(timestamp(now2)-timestamp(now)) 
# 15890.0 
+0

感謝其工作 – 2010-11-12 13:17:15

+0

@Gautam:在這種情況下,請使用左側的勾號接受答案。 – 2010-11-12 13:25:03

0

我猜你想在幾秒鐘內找到兩個日期之間的差異?

如果是這種情況,那麼首先得到一個timedelta(通過簡單地用-運營商將任何兩個日期時間對象進行分割)。然後閱讀結果對象的seconds字段。

+0

謝謝...但我有兩個日期時間字符串像這樣'2010-08-31 04:35:50.176725'和'2010-09 -05 04:35:50.176725'。現在我的問題是如何計算兩個日期之間的秒數。我使用時間三角洲,但它在小時,分鐘的合作者的回報。我想在幾秒鐘內完成。 – 2010-11-12 12:33:42

+0

@Gautam - 我給你你的問題的答案。但請用您在此發佈的評論更新您的問題。現在比你原來的問題更清楚了。 – eumiro 2010-11-12 12:59:56

+0

這個答案是錯誤的。 'seconds'字段只是由'timedelta'實例表示的數據的一部分。 – 2014-11-30 17:44:01