Python でタイムスタンプの文字列(時差こみ)を Unix Timestamp にする方法
2023.02.18
Python でタイムスタンプの文字列(日本時間)を Unix Timestamp にするには fromisoformat
を使います。
from datetime import datetime
text = '2020-03-06 15:02:19'
dt = datetime.fromisoformat(text)
timestamp = int(dt.timestamp()) + 9 * 3600
print(timestamp) # 1583506939
fromisoformat
は文字列をとります。timestamp
は小数で返ってくるため、整数にするときは int で変換します。もとの文字列が日本時間のときは 9 * 3600
を足して時差を解消します。
MySQL Connector などを使ってデータベースから Timestamp のデータを出すときは、Python はそれを datetime.datetime と解釈するため、データベースにある値を fromisoformat に入れるときは文字列に変えます。
# date_created はデータベースの Timestamp 型から出した値
text = str(date_created)