[Python]datetimeの秒を引き算するには?

どうも、ちょげ(@chogetarou)です。

datetimeの秒を引き算する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

datetimeの秒を引き算する方法は、2つあります。

datetime.timedelta()

1つは、datetime.timedelta()を使う方法です。

まず、datetimeとtimedelta()をインポートします。

from datetime import datetime, timedelta

次に、対象のdatetimeをdatetime.delta()で引き算します。

そして、datetime.delta()の引数「seconds」に引く秒数を指定します。

new_day = current_day - timedelta(seconds=N) #Nは引く秒数

上記の引き算は、対象のdatetimeを引き算したdatetimeを返します。

使用例

from datetime import datetime, timedelta

current_day = datetime.now()

new_day = current_day - timedelta(seconds=10)

print(current_day) #2022-06-29 17:12:27.211112
print(new_day) #2022-06-29 17:12:17.211112

dateutile.relativedelta()

もう1つは、dateutile.relativedelta()を使う方法です。

まず、dateutilのrelativedeltaをインポートします。

from dateutil.relativedelta import relativedelta

次に、対象のdatetimeをrelativedelta()で引き算します。

そして、relativedelta()の引数「seconds」に引く秒数を指定します。

new_day = day - relativedelta(seconds=N) #Nは引く秒数

上記の引き算は、datetimeの秒を引き算したdatetimeを返します。

使用例

from datetime import datetime
from dateutil.relativedelta import relativedelta

current_day = datetime.now()

new_day = current_day - relativedelta(seconds=10)

print(current_day) #2022-06-29 17:12:27.211112
print(new_day) #2022-06-29 17:12:17.211112

まとめ

datetimeの秒数を引き算する方法は、次の2つです。

  • datetime.timedelta()を使う方法
    new_day = current_day - timedelta(seconds=N)
  • dateutil.relativedelta()を使う方法
    dateutile.relativedelta()

コメント

タイトルとURLをコピーしました