PythonのDatetimeモジュールの概要
PythonのDatetimeモジュールは日付や時間を扱うための機能が集められたものです。日付や時間を扱うためには、Datetimeモジュールを使うことが一般的です。
Datetime Formatの基本的な使い方
Datetime Formatは、日付や時間を表現するための書式です。Datetimeモジュールのstrftime関数を使用することで、Datetime Formatを使うことができます。
import datetime # 現在の日付・時間を取得 now = datetime.datetime.now() # Datetime Formatによる表示 print(now.strftime('%Y/%m/%d %H:%M:%S'))
上記のコードでは、現在の日付・時間を取得し、Datetime Formatによる表示を行っています。Datetime Formatにおけるフォーマットコードの例として、%Yは年、%mは月、%dは日、%Hは時、%Mは分、%Sは秒を表します。
Datetime Formatで使用できる代表的なフォーマットコード
Datetime Formatで使用できる代表的なフォーマットコードについて紹介します。
フォーマットコード | 説明 |
---|---|
%Y | 年 |
%m | 月 |
%d | 日 |
%H | 時 |
%M | 分 |
%S | 秒 |
%f | マイクロ秒 |
%a | 曜日(短縮形) |
%A | 曜日(完全形) |
%b | 月(短縮形) |
%B | 月(完全形) |
%p | AM/PM |
%z | タイムゾーンオフセット |
%Z | タイムゾーン名 |
%j | 年内の日数 |
%U | 年内の週番号(日曜始まり) |
%W | 年内の週番号(月曜始まり) |
Datetime Formatを使った日付・時間の表示方法
Datetime Formatを使った日付・時間の表示方法について紹介します。
import datetime # 現在の日付・時間を取得 now = datetime.datetime.now() # Datetime Formatによる表示 print(now.strftime('%Y/%m/%d %H:%M:%S')) # 日付のみの表示 print(now.strftime('%Y/%m/%d')) # 時間のみの表示 print(now.strftime('%H:%M:%S')) # 曜日の表示 print(now.strftime('%A')) # AM/PM表記の表示 print(now.strftime('%p')) # タイムゾーンオフセットの表示 print(now.strftime('%z')) # タイムゾーン名の表示 print(now.strftime('%Z'))
上記のコードでは、現在の日付・時間を取得し、Datetime Formatを使った日付・時間の表示を行っています。
Datetime Formatにおける時間帯の扱い方
Datetime Formatにおける時間帯の扱い方について紹介します。
import datetime # 現在の日付・時間を取得 now = datetime.datetime.now() # UTC時間の表示 print(now.strftime('%Y-%m-%d %H:%M:%S UTC')) # JST時間の表示 jst = datetime.timezone(datetime.timedelta(hours=9), 'JST') print(now.astimezone(jst).strftime('%Y-%m-%d %H:%M:%S JST'))
上記のコードでは、現在の日付・時間を取得し、UTC時間とJST時間の表示を行っています。UTCは世界協定時刻、JSTは日本標準時を表しています。
Datetime Formatを用いた日付・時間の計算方法
Datetime Formatを用いた日付・時間の計算方法について紹介します。
import datetime # 現在の日付・時間を取得 now = datetime.datetime.now() # 1日後の日付を計算 tomorrow = now + datetime.timedelta(days=1) print(tomorrow.strftime('%Y/%m/%d')) # 1時間後の時刻を計算 next_hour = now + datetime.timedelta(hours=1) print(next_hour.strftime('%H:%M:%S')) # 10分後の時刻を計算 ten_minutes_later = now + datetime.timedelta(minutes=10) print(ten_minutes_later.strftime('%H:%M:%S'))
上記のコードでは、現在の日付・時間を取得し、1日後の日付、1時間後の時刻、10分後の時刻を計算しています。
まとめ
PythonのDatetimeモジュールを使うことで、日付や時間を扱うことができます。Datetime Formatを使うことで、日付や時間を表現するための書式を指定することができます。Datetime Formatにおけるフォーマットコードを覚えておくことで、日付や時間の表示方法を自由自在にコントロールすることができます。