datetimeモジュールを使用した日付の使い方 – 【Python】

datetimeモジュールを使用した日付の使い方 – 【Python】

Pythonで日付を扱う為にdatetimeと言うモジュールが組込モジュールとして用意されています。

現在日付

from datetime import datetime

current_datetime = datetime.now()
print(current_datetime) # 2022-02-14 04:49:26.396291

現在日付の年月日

from datetime import date

today_date = date.today()
print(today_date) # 2022-02-14

現在日付の時刻

from datetime import datetime

current_time = datetime.now().time()
print(current_time) # 04:49:26.396291

日時を作成

datetimeに引数指定し、日時を指定して作成します。

from datetime import datetime
dt1 = datetime(2022, 12, 31, 18, 30, 10)
print(dt1) # 2022-12-31 18:30:10

次に、datetime.strptime()メソッドを使用して文字列からdatetimeに変換します。

from datetime import datetime, timedelta

dtstr = '2022-12-31 18:30:10' 
dt1 = datetime.strptime(dtstr, '%Y-%m-%d %H:%M:%S')
print(dt1) # 2022-12-31 18:30:10

フォーマット

from datetime import datetime

dt1 = datetime(2022, 12, 31, 18, 30, 10)
print(dt1) # 2022-12-31 18:30:10
dt2 = dt1.strftime("%Y-%m-%d %H:%M:%S")
print(dt2) # 2022-12-31 18:30:10 文字列

日時をJSTに変換

astimezoneメソッドを使用して現在日時をJSTに変換します。

import time
from datetime import datetime, timedelta, timezone

current_datetime = datetime.now()
JST = timezone(timedelta(hours=+9), 'JST')
current_datetime_jst = current_datetime.astimezone(JST).strftime("%Y-%m-%d %H:%M:%S")
print(current_datetime_jst)

datetime.now()の引数にJSTタイムゾーンオブジェクトを指定してJSTに変換する例です。

from datetime import datetime, timedelta, timezone

JST = timezone(timedelta(hours=+9), 'JST')
current_datetime = datetime.now(JST)
current_datetime_jst = current_datetime.strftime("%Y-%m-%d %H:%M:%S")
print(current_datetime_jst)
print(current_datetime.tzinfo) # JST

timedeltaによる加減算

timedeltaクラスを使用して日付の加減算が行えます。

from datetime import datetime, timedelta

dt1 = datetime(2022, 12, 31, 18, 30, 10)
print(dt1) # 2022-12-31 18:30:10

oneday = timedelta(days=1)

dt2 = dt1 + oneday
print(dt2) # 2023-01-01 18:30:10

timedeltaに指定できる引数です。年(years)や月(months)がないようです。

引数
days
hours
minutes
seconds
microseconds
milliseconds
weeks

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

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