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 |
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^