2
由於大多數DST時髦事件發生在午夜左右,我認爲從「上午8點」時間減去當前時間應該是相當安全的,但這不是一種解決方案,米很舒服。獲取自當地時間早上8點加時間結束後的時間
(在下文中假定機器的本地時間是美國/紐約,這是我的目的一個安全的假設)
要解釋什麼是我要找的,這裏是我會怎麼做它在Python
from datetime import datetime,date,time
print (datetime.now() - datetime.combine(date.today(), time(8,0,0))).total_seconds()
或者,如果我是一個有點肛小心:
from datetime import datetime,date,time
import pytz
tz = pytz.timezone('America/New_York') #local time is always New York
now = pytz.UTC.localize(datetime.utcnow()).astimezone(tz) # now in this timezone
eight_am = tz.localize(datetime.combine(now.date(), time(8,0,0)))
(now - eight_am).total_seconds()
我將如何去實現C++中的每個提升?
「發生在午夜」 - 是的,在凌晨2:00到具體。 –
標題中提到「自上午8點以來的時間」,但您將其描述爲第一段中的解決方法。你試圖解決的根本問題是什麼? –
我沒有描述「自8am以來」作爲解決方法,我描述了當地時間和當地時間早上8點之間的區別,作爲一種解決方法。爲什麼?因爲如果有一天我改變上午8點到午夜或上午,它會破壞代碼。因爲如果有一天我想讓它「從昨天上午8點開始」,那麼解決方案也會打破,等等。 第一種方法做出回答(簡單的區別)實際上會有幫助,我不熟悉與升壓時間功能。當然,第二種方式的答案會很棒。 –