日付(年/月/日)と時刻(時/分/秒)の値を取得する

広告

datetime クラスや date クラスのインスタンスから年や月などの日時に関する値や、分や秒など時刻に関する値を取り出して取得する方法について解説します。

属性値を参照する

日付と時刻の値を持つ datetime クラスではインスタンス毎に次の属性を参照することができます。

datetime.year        : 年
datetime.month       : 月
datetime.day         : 日
datetime.hour        : 時
datetime.minute      : 分
datetime.second      : 秒
datetime.microsecond : マイクロ秒
datetime.tzinfo      : タイムゾーン
datetime.fold        : 0 or 1

具体的には次のように記述します。

import datetime

dt = datetime.datetime.now()
print(dt)
--> 2020-07-22 12:06:25.559839

print(dt.year)
--> 2020

print(dt.minute)
--> 6

datetime クラスと同じように date クラスや time クラスでも属性値を参照することができます。

日付の値を持つ date クラスではインスタンス毎に次の属性を参照することができます。

date.year        : 年
date.month       : 月
date.day         : 日

時刻の値を持つ time クラスではインスタンス毎に次の属性を参照することができます。

time.hour        : 時
time.minute      : 分
time.second      : 秒
time.microsecond : マイクロ秒
time.tzinfo      : タイムゾーン
time.fold        : 0 or 1

サンプルプログラム

それでは簡単なサンプルプログラムを作って試してみます。テキストエディタで次のように記述したあと、 sample4-1.py という名前で保存します。

import datetime

tokyo_tz = datetime.timezone(datetime.timedelta(hours=9))
dt = datetime.datetime.now(tokyo_tz)

print(dt)
print("year : " + str(dt.year))
print("month : " + str(dt.month))
print("day : " + str(dt.day))
print("hour : " + str(dt.hour))
print("minute : " + str(dt.minute))
print("second : " + str(dt.second))
print("microsecond : " + str(dt.microsecond))
print("tzinfo : " + str(dt.tzinfo))

その後で、次のように実行してください。

python sample4-1.py

日付(年/月/日)と時刻(時/分/秒)の値を取得する(1)

datetime クラスのインスタンスから月や秒などの属性値を参照して出力しました。

-- --

datetime クラスや date クラスのインスタンスから年や月などの日時に関する値や、分や秒など時刻に関する値を取り出して取得する方法について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。