Pythonには、日付や時間を扱うdatetimeモジュールがあります。このモジュールを使うことで、日付や時間を簡単に扱うことができます。
Datetimeのformat表記法とは
Datetimeオブジェクトは、strftimeメソッドを使って、日付や時間のフォーマットを指定することができます。
例えば、以下のようなフォーマット指定子を使うことで、日付や時間を指定したフォーマットで表示することができます。
- %Y: 年(4桁の数字)
- %m: 月(2桁の数字)
- %d: 日(2桁の数字)
- %H: 時間(24時間表記、2桁の数字)
- %M: 分(2桁の数字)
- %S: 秒(2桁の数字)
ミリ秒の表記方法
Datetimeオブジェクトを使って、ミリ秒を表記するには、以下のようにフォーマット指定子を使います。
%f: マイクロ秒(6桁の数字)
しかし、ミリ秒を表記するためには、このフォーマット指定子を1000で割った値を使う必要があります。
%f: マイクロ秒(6桁の数字)/ 1000
Datetimeを別のformatに変換する方法
Datetimeオブジェクトを別のフォーマットに変換するには、strftimeメソッドを使います。
例えば、以下のように書くことで、現在の日付と時刻を「年-月-日 時:分:秒」の形式で表示することができます。
import datetime now = datetime.datetime.now() formatted_date = now.strftime("%Y-%m-%d %H:%M:%S") print(formatted_date)
実行結果:
2021-01-01 12:34:56
Datetimeのformatを確認する方法
Datetimeオブジェクトのフォーマットを確認するには、strptimeメソッドを使います。
例えば、以下のように書くことで、文字列からDatetimeオブジェクトを作成し、そのフォーマットを確認することができます。
import datetime date_string = "2021-01-01 12:34:56" datetime_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S") print(datetime_object.strftime("%Y-%m-%d %H:%M:%S"))
実行結果:
2021-01-01 12:34:56
具体的な使用例とコード
Datetimeオブジェクトを使った具体的な使用例として、以下のようなコードがあります。
import datetime import time # 現在の日付と時刻を表示する now = datetime.datetime.now() formatted_date = now.strftime("%Y-%m-%d %H:%M:%S") print("現在の日付と時刻:", formatted_date) # 1秒待ってから再度現在の日付と時刻を表示する time.sleep(1) now = datetime.datetime.now() formatted_date = now.strftime("%Y-%m-%d %H:%M:%S") print("1秒後の日付と時刻:", formatted_date) # 文字列からDatetimeオブジェクトを作成し、フォーマットを確認する date_string = "2021-01-01 12:34:56" datetime_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S") print("Datetimeオブジェクトのフォーマット:", datetime_object.strftime("%Y-%m-%d %H:%M:%S")) # ミリ秒を含むDatetimeオブジェクトを作成する date_string = "2021-01-01 12:34:56.789" datetime_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S.%f") print("Datetimeオブジェクトのフォーマット:", datetime_object.strftime("%Y-%m-%d %H:%M:%S.%f")[:-3])
実行結果:
現在の日付と時刻: 2021-01-01 12:34:56 1秒後の日付と時刻: 2021-01-01 12:34:57 Datetimeオブジェクトのフォーマット: 2021-01-01 12:34:56 Datetimeオブジェクトのフォーマット: 2021-01-01 12:34:56.789
まとめ
Datetimeオブジェクトを使って、日付や時間を簡単に扱う方法を紹介しました。strftimeメソッドを使ってフォーマットを指定し、strptimeメソッドを使ってフォーマットを確認することができます。また、ミリ秒を表記する場合は、マイクロ秒を1000で割った値を使う必要があります。
日付や時間を扱う場合には、datetimeモジュールを使って簡単に扱うことができるので、ぜひ活用してみてください。