【初心者向け】Pythonで行う日付処理(datetime・time)

Pythonの日付処理 プログラミング

この記事ではPythonの日付処理で使われるdatetimeモジュールとtimeモジュールについて解説していきます。
datetimeモジュールには、date、time、datetime、timedeltaのモジュールがあるのでそれぞれ解説していきます。

datetimeモジュール

date

・Datetime.dateオブジェクトはdatetime.date.today()で今日の日付を返します。.weekday()で曜日を数字で返します。属性もyear,month,dayが使用できそれぞれの情報を取得できます。

from datetime import date, time, datetime, timedelta

# 現在の日付取得
today = date.today()
# >>> 2024-11-23

# 曜日取得(月曜0~日曜6)
weekday = date.weekday(today)
# >>> 5

# ISOフォーマットで取得
isoformat = date.isoformat(today)
# >>> 2024-11-23

# 任意のフォーマットで取得
strftime = date.strftime(today, "%Y/%m/%d")
# >>> 2024/11/23

time

・Datetime.timeオブジェクトは、datetime.time(hour,minute,second)で時刻を指定できます。属性として、hour,mintute,secondを取得できます。

# 時刻設定
now = time(8, 52, 00)
# >>> 08:52:00

# 時間取得
hour = now.hour
# >>> 8

# 分取得
minute = now.minute
# >>> 52

# 秒取得
second = now.second
# >>> 0

# 任意のフォーマットで取得
strftime=time.strftime(now,'%H-%M-%S')
# >>> 08-52-00

datetime

・datetime.datetimeオブジェクトは、日付も日時も取得できます。today(),now()で現在の日時を取得できます。
・.strftime(‘%Y%M%D%H%M%S’)などでフォーマットを指定して出力することも可能です。

# 現在の日付取得
today = datetime.today()
# >>> 2024-11-23 08:39:14.939844

# 現在の時刻取得
now = datetime.now()
# >>> 2024-11-23 08:39:14.939844

# 任意のフォーマットで取得
strftime=datetime.strftime(today,"%Y年%m月%d日%H時%M分%S秒")
# >>> 2024年11月23日08時39分14秒

timedelta

# 日時の差を取得
week = timedelta(days=7)
today = datetime.today()
print(today + week)
# >>> 2024-11-30 08:39:51.432517

timeモジュール

timeモジュールではエポック1970年1月1日からの経過時間を取得します。localtime()で現地時刻を取得し、gmtime()で世界標準時間を取得します。
time.sleep(5)でプログラムの実行を待機させることができます。

import time

# エポック(1970年1月1日からの秒数)
current_time=time.time()
# >>> 1732418336.4546468

# 日本時間の取得
ltime=time.localtime()
print(time.strftime("%Y-%m-%d-%H:%M",ltime))
# >>> 2024-11-24-12:19

# 世界標準時間の取得
gtime=time.gmtime()
print(time.strftime("%Y-%m-%d-%H:%M",gtime))
# >>> 2024-11-24-03:19

# 処理時間を5秒遅らせる
time.sleep(5)
print('5秒経過')
タイトルとURLをコピーしました