Python プログラミング

[Python] datetimeモジュールで日付型・時刻型を扱う

投稿日:2018年7月8日 更新日:

こんにちは!シミダイ(@shimidai2100)です。

Pythonで日付型・時間型を扱うための「datetime」モジュールを紹介します。

「datetime」モジュールを使用すれば、時刻情報の取得だけでなく、時刻データの計算も簡単にできるようになります。


datetimeモジュールとは?

datetime」モジュールとは、Python内の標準ライブラリで日付や時刻のデータを簡単に扱うことができます。

また「datetime」モジュールでは四則演算もサポートしています。

datetimeモジュールでは以下のオブジェクトができ、これらを覚えておけば問題ないでしょうか。

オブジェクト名説明
datetime.datetime日付と時刻を扱う
datetime.date日付を扱う
datetime.time時刻を扱う
datetime.timedelta日付・時刻の計算に使用

日付・時刻型を扱う:datetimeオブジェクト

現在の日付型と時刻型を同時に扱うには「datetime」オブジェクトを使用することをオススメします。

紛らわしいですが、「datetime」モジュールの「datetime」オブジェクトなので注意してください。

また現在日付・時刻を取得するのは

  • now()」メソッド
  • today()」メソッド

を使用します。下の要に使用します。

下がサンプルになります。

出力結果は以下になります。

2018-07-07 11:33:57.430497
2018
7
7
11
33
57
430497

「datetime」オブジェクトの各属性で年月日と現在時刻も表示することができます。

日付型を扱う:dateオブジェクト

日付型を扱うには「date」オブジェクトを使用することをオススメします。

現在日付を取得するのは「today()」メソッドを使用します。

下がサンプルになります。

出力結果は以下になります。

2018-07-07
2018
7
7

ちなみに「datetime」オブジェクトもインスタンスメソッドを使用することで、

「date」オブジェクトに変換することができます。

時刻を扱う:timeオブジェクト

時刻を扱うには「time」オブジェクトを使用出来ます。

現在の時刻は「time」オブジェクトでは取得できませんので注意してください。

下がサンプルになります。

出力結果は以下になります。

22:30:15.000555
22
30
15
555

ちなみに「datetime」オブジェクトもインスタンスメソッドを使用することで、

「time」オブジェクトに変換することができます。

時刻・日付で計算:timedeltaオブジェクト

日付・時刻を計算するに「timedelta」オブジェクトを使用出来ます。

「timedalta」を使用することで、

  • ○○日後
  • ○○年前
  • ○○時間経過

といったような計算を行うことができます。

「timedelta」は以下のように使用します。

以下指定方法です。すべて整数で指定します。

timedeltaのコンストラクタ説明
days=日にちを進める。負の整数で日にちを戻す
seconds=秒数を進める。負の整数で秒数を戻す
microseconds=マイクロ秒数を進める。負の整数でマイクロ秒数を戻す
milliseconds=ミリ秒数を進める。負の整数でミリ秒数を戻す
minutes=分を進める。負の整数で分を戻す
hours=時間を進める。負の整数で時間を戻す
weeks=週数を進める。負の整数で週数を戻す

下がサンプルになります。

出力結果は以下になります。

2018-07-07 13:01:52.313777
2018-07-14 13:01:52.313777
2018-06-30 13:01:52.313777
2000-12-31
6397

 

スポンサードリンク

関連記事

-Python, プログラミング

Translate »

Copyright© shimidai2100 , 2018 All Rights Reserved.