Pythonの日付型「datetime」の足し算・引き算(加算・減算)について。
この記事の内容はコチラです
- Pythonで日付を足したい
- 日付を引き算したい
日付の日数を計算することはよくあることですね。
今回は、Pythonで日付「datetime」の足し算・引き算の方法を解説します。
日付 datetime を足し算・引き算する方法
Pythonで日付「datetime」を足す・引く(加算・減算)していきます。
日付・時間を足す(加算)
import datetime # 現在時刻 dt1 = datetime.datetime.now() print(dt1) #[結果] 2023-08-23 07:12:20.806648
# 1日後 dt2 = dt1 + datetime.timedelta(days=1) print(dt2) #[結果] 2023-08-24 07:12:20.806648
# 1時間後 dt2 = dt1 + datetime.timedelta(hours=1) print(dt2) #[結果] 2023-08-23 08:12:20.806648
# 10分後 dt2 = dt1 + datetime.timedelta(minutes=10) print(dt2) #[結果] 2023-08-23 07:22:20.806648
# 30秒後 dt2 = dt1 + datetime.timedelta(seconds=30) print(dt2) #[結果] 2023-08-23 07:12:50.806648
日付を足したり引いたりするには、「datetime」の「timedelta」を使います。引数に加算・減算する対象を設定します。日付は「days」です。
日付以外にも時間、分、秒なども足したり引いたりできます。
weeks | 週 |
days | 日 |
hours | 時間 |
minutes | 分 |
seconds | 秒 |
milliseconds | ミリ秒 |
microseconds | マイクロ秒 |
日付・時間を引く(減算)
import datetime # 現在時刻 dt1 = datetime.datetime.now() print(dt1) #[結果] 2023-08-23 07:12:20.806648
# 1日前 dt2 = dt1 + datetime.timedelta(days=-1) print(dt2) #[結果] 2023-08-22 07:12:20.806648
# 1時間前 dt2 = dt1 + datetime.timedelta(hours=-1) print(dt2) #[結果] 2023-08-23 06:12:20.806648
# 10分前 dt2 = dt1 + datetime.timedelta(minutes=-10) print(dt2) #[結果] 2023-08-23 07:02:20.806648
# 30秒前 dt2 = dt1 + datetime.timedelta(seconds=-30) print(dt2) #[結果] 2023-08-23 07:11:50.806648
日付を引く(減算)するには、「datetime」の「timedelta」の日付・時間をマイナスで指定します。その他は足す方法と同じです。
日付+時間、時間+分を足す
import datetime # 現在時刻 dt1 = datetime.datetime.now() print(dt1) #[結果] 2023-08-23 07:12:20.806648
# 3日後+5時間後 dt2 = dt1 + datetime.timedelta(days=3, hours=5) print(dt2) #[結果] 2023-08-26 12:12:20.806648
# 1時間30分後 dt2 = dt1 + datetime.timedelta(hours=1, minutes=30) print(dt2) #[結果] 2023-08-23 08:42:20.806648
時間だけを足す・引くだけでなく、「1時間30分後」のように時間と分をあわせて足す・引くことができます。その場合は、「timedelta」の引数を2つ、3つと追加していきます。
ページ:https://docs.python.jp/3/library/datetime.html
これで日付「datetime」を足す・引くことができました。
以上、Pythonで日付datetimeを足す・引く(加算・減算)する方法でした。
コメント