この連載では、Pythonについて色々な形で再学習に取り組んでいます。前回の記事はこちらになります。
今回は日付と時間です。プログラミングでは、押さえておかなければならないポイントです。

日付、時間を扱う標準ライブラリ
Pythonで日付、時間を扱う場合には標準ライブラリ「datetimeモジュール」を用います。他の標準ライブラリと同様に、使用する際にはimport文を使用して呼び出します。
import datetime # モジュール名を返す print(datetime.__name__) # datetime を返す # フルパスファイル名を返す print(datetime.__file__) # C:\Users\XXX\anaconda3\Lib\datetime.py を返す
datetimeモジュールをインポートすると、datetimeクラスを使用できます。
日時データの作成
日時データの作り方です。datetimeオブジェクトの「datetimeメソッド」、「dateメソッド」、「timeメソッド」を使用します。
- datetimeメソッド
datetimeメソッドは、datetime型のデータを扱います。日付と時間が対象となります。
dt1 = datetime.datetime(2024,8,30,15,7,30,100)
print(dt1) # 2024-08-30 15:07:30.000100 を返す
print(type(dt1)) # <class 'datetime.datetime'> を返す
dt2 = datetime.datetime(2024,8,30)
print(dt2) # 2024-08-30 00:00:00 を返す
datetimeメソッドの記述は以下になります。
datetime.datetime(年,月,日,時,分,秒,マイクロ秒)
時、分、秒、マイクロ秒については記述を省略できます。省略した場合は0なります。マイクロ秒の値が0となる場合は、print関数などで表示する場合は表示が省略されるようです。
- dateメソッド dateメソッドは、date型のデータを扱います。日付が対象となります。
dt3 = datetime.date(2024,8,30)
print(dt3) # 2024-08-30 を返す
print(type(dt3)) # <class 'datetime.date'> を返す
dateメソッドの記述は以下になります。
datetime.date(年,月,日)
- timeメソッド timeメソッドは、time型のデータを扱います。時間が対象となります。
dt4 = datetime.time(15,7,30,100)
print(dt4) # 15:07:30.000100 を返す
print(type(dt4)) # <class 'datetime.time'> を返す
dt5 = datetime.time(15)
print(dt5) # 15:00:00 を返す
timeメソッドの記述は以下になります。
datetime.time(時,分,秒,マイクロ秒)
分、秒、マイクロ秒については記述を省略できます。省略した場合は0なります。
要素を取り出す
これで、各値を指定して日時を扱うデータを作ることができました。次に作成した日時データから各要素を取り出す方法です。
dt6= datetime.datetime(2024,8,30,15,7,30,100) print(dt6.year) # 2024 を返す print(dt6.month) # 8 を返す print(dt6.day) # 30 を返す print(dt6.hour) # 15 を返す print(dt6.minute) # 7 を返す print(dt6.second) # 30 を返す print(dt6.microsecond) # 100 を返す
この様に記述すると、日時データを構成する各要素を整数型の形で取り出せます。上の例はdatetime型ですが、date型、time型でも同じです。
次回は日時データの応用
いかがでしょうか。datetimeモジュールの概略が朧気ながらわかってきました。次回は日時データの応用です。日時データの応用です。日時データは色々な処理方法が考えられますが、datetimeモジュールには、便利な機能があります。お楽しみに!!