Pythonでは、日付や時間を扱う際にUnix時間という概念がよく用いられます。Unix時間は、1970年1月1日00:00:00 UTCからの経過秒数で、多くのオペレーティングシステムで用いられています。
PythonでUnix時間と文字列を相互に変換する方法を見ていきましょう。
文字列からUnix時間への変換
文字列からUnix時間への変換は、datetime
モジュールのstrptime
関数とtimestamp
関数を用いて行います。
from datetime import datetime
str_datetime = "2020-10-26 17:22:51" # 変換したい日時の文字列
dt = datetime.strptime(str_datetime, '%Y-%m-%d %H:%M:%S') # 文字列からdatetimeオブジェクトへ変換
unixtime = dt.timestamp() # datetimeオブジェクトからUnix時間へ変換
print(unixtime)
Unix時間から文字列への変換
Unix時間から文字列への変換は、datetime
モジュールのfromtimestamp
関数とstrftime
関数を用いて行います。
from datetime import datetime
unixtime = 1603728171 # 変換したいUnix時間
dt = datetime.fromtimestamp(unixtime) # Unix時間からdatetimeオブジェクトへ変換
str_datetime = dt.strftime('%Y-%m-%d %H:%M:%S') # datetimeオブジェクトから文字列へ変換
print(str_datetime)
これらの変換方法を理解し、適切に使い分けることで、Pythonで日付や時間を扱う際の幅が広がります。.