🖥
#python で 英語月表記・タイムゾーン尽きの日付文字列を parse して datetime オブジェクトに変換し、さらに unix
- 特定のフォーマットで文字列を与えて datetime オブジェクトに変換する
- datetime オブジェクトから unixtimestamp に変換する
UTC
UTC の場合
from datetime import datetime
datetime_str_utc = 'Mon Apr 08 05:00:25 +0000 2019'
datetime_obj_utc = datetime.strptime(datetime_str_utc,'%a %b %d %H:%M:%S %z %Y')
# datetime.datetime(2019, 4, 8, 5, 0, 25, tzinfo=datetime.timezone.utc)
timestamp_utc = datetime.timestamp(datetime_obj_utc)
# 1554699625.0
JST ( Localtime )
同じ時刻を JST 基準で与えると、UTC的にはそれよりも9時間前なので、timestamp は9時間分 ( 60609 = 32400秒 ) 小さくなる
from datetime import datetime
datetime_str_jst = 'Mon Apr 08 05:00:25 +0900 2019'
datetime_obj_jst = datetime.strptime(datetime_str_jst,'%a %b %d %H:%M:%S %z %Y')
# datetime.datetime(2019, 4, 8, 5, 0, 25, tzinfo=datetime.timezone(datetime.timedelta(seconds=32400)))
timestamp_jst = datetime.timestamp(datetime_obj_jst)
# 1554667225.0
Compair
- 同じ時刻表記に対して、UTC基準で算出した timestamp の方が 9時間進んでいる
- よってUTC基準のtimestmapからJST基準のtimestmapを差し引くと
60*60*9 = 32400秒
の違いが出る
timestamp_utc - timestamp_jst
# 32400.0
ちなみに
タイムゾーンを考える時は何百回だって頭がパズルになります
Original by Github issue
チャットメンバー募集
何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。
公開日時
2019-04-09
Discussion