2015-10-20 52 views
-1

開始我不知道的時間戳,如果有任何的方式來獲得UNIX時間戳在某一天的開始,即給予其時區每天的午夜時間戳。找了一天(當地時間)

+0

自世紀或微秒以來的秒數? –

+0

如果你有一個'datetime'對象,你可以調用['datetime.timestamp()'](https://docs.python.org/3.4/library/datetime.html#datetime.datetime.timestamp)。 – Kevin

+0

^這個,再加上它很容易創建一個午夜當地時間的日期時間,如果你還沒有。 –

回答

3

假設你不在乎日光節約時間和你知道UTC偏移量實際上是在當時(相對於UTC的偏移量實際上是現在),你可以這樣做:

import datetime as dt 
return dt.datetime(year, month, day, tzinfo=dt.timezone(utc_offset)).timestamp() 

小時,分鐘和秒鐘默認爲零,因此您可以跳過它們。所述timezone類不處理夏令時,在時區定義(例如British Double Summer Time),或任何其它時間異常(例如there was no December 30, 2011 in Samoa)歷史變化;這是一個「啞」的抵消。它相當於(在這種情況下)直接在時間戳上添加或減去偏移量,然後以UTC工作。你必須確保這對你的用例是正確的。如果你需要更好的計時,你應該安裝和使用pytz

+1

歡迎downvoter評論此答案的錯誤。由於OP具體詢問UTC偏移量,因此我很難對這個問題給出更「正確」的答案。 – Kevin