Pythonにおけるエポックの差
指定されたエポック間の差は、
struct_timeオブジェクトを
timeモジュールのmktimeメソッドで
秒に変換することで求めることができます。
エポック形式で指定された現在時刻と、
日付'11/12/2023 19:25'との差を
求めてみましょう。まず、
timeメソッドを使用してエポックを取得します:
now = time.time()
次に、指定された日付を
strptimeメソッドで変換します。
最初のパラメータに日付を、
2番目のパラメータにその形式を記述します:
dt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
print(dt)
結果として、struct_timeオブジェクトが得られます:
time.struct_time(tm_year=2023, tm_mon=12,
tm_mday=11, tm_hour=19, tm_min=25, tm_sec=0,
tm_wday=0, tm_yday=345, tm_isdst=-1)
次に、struct_timeを
mktimeメソッドで秒に変換し、
結果を変数dt_epochに代入します。
その後、現在のエポックとdt_epochの差を求めます。
完全なコードは以下のようになります:
now = time.time()
dt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
dt_epoch = time.mktime(dt)
res = now - dt_epoch
print(res) # 7937111.23894763 と表示されます
この結果から分数を取得するには、
60で割ります:
print(res / 60) # 132299.33016448814 と表示されます
以下の日付が与えられています:
dt = '24/07/2015 16:1'
現在時刻からこの日付までの経過秒数を求めてください。
2つの日付が与えられています:
dt1 = '12/02/23 10:12:54'
dt2 = '31/12/24 19:38:21'
2番目の日付と最初の日付の間の経過秒数を求めてください。
前の問題の解答を修正して、 2つの日付の間の経過日数を求めてください。