字串轉時間
假設字串是「Wed, 10 Jan 2018 08:09:13 +0000」,可以使用這樣的 Pattern 來解析:
from datetime import datetime time_text = 'Wed, 10 Jan 2018 08:09:13 +0000' datetime.strptime(time_text, '%a, %d %b %Y %H:%M:%S %z')
其中 Pattern 的寫法可以參考官方的文件 [1]。
取得帶有時區資訊的現在時間
需要特別這麼做的原因,是因為如果是直接使用 datetime.now() 的話,得到的時間是沒有時區的這在需要做時間比較時有可能會有問題,尤其在要比較的時間本身就有時區資訊的話,Python 會回傳錯誤訊息。
from datetime import datetime, timezone datetime.now(timezone.utc)
計算時間
取得三小時前的時間from datetime import datetime, timedelta, timezone datetime.now(timezone.utc) - timedelta(hours=3)
沒有留言:
張貼留言