日時操作は、プログラミングにおいて非常に重要な要素の一つです。特に、Webアプリケーションの開発においては、ユーザーからの入力情報を日時として扱うことが多いため、日時操作の知識が必須となります。
Pythonで日時を扱うモジュール「datetime」の紹介
Pythonでは、日時を扱うための標準モジュールとして「datetime」が用意されています。datetimeモジュールには、日時の加減算や書式の変換など、多くの日時操作に必要な機能が含まれています。
文字列を日時に変換する方法の基本的な手順
日時を扱うためには、まずは文字列として入力された日時情報を、datetimeモジュールが扱える形式に変換する必要があります。基本的な手順は以下の通りです。
import datetime
# 文字列をdatetimeオブジェクトに変換
datetime_obj = datetime.datetime.strptime("2022-01-01 12:00:00", "%Y-%m-%d %H:%M:%S")
# datetimeオブジェクトを文字列に変換
str_obj = datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
strptimeメソッドは、文字列をdatetimeオブジェクトに変換するためのメソッドです。引数には、変換元の文字列と、文字列の書式を指定します。書式指定子には、例えば「%Y」は年を表すなど、文字列の中に含まれる日時情報を指定します。
strftimeメソッドは、datetimeオブジェクトを文字列に変換するためのメソッドです。引数には、変換後の文字列の書式を指定します。
datetimeモジュールのstrftimeとstrptimeメソッドについて
strftimeメソッドとstrptimeメソッドには、それぞれ多くの書式指定子が用意されています。以下に代表的な指定子をまとめました。
| 書式指定子 | 説明 |
|---|---|
| %Y | 年(4桁) |
| %m | 月(2桁) |
| %d | 日(2桁) |
| %H | 時(24時間制、2桁) |
| %M | 分(2桁) |
| %S | 秒(2桁) |
実例を用いた文字列から日時への変換の方法
以下に、具体的な例を示します。
import datetime
# 文字列をdatetimeオブジェクトに変換
datetime_obj = datetime.datetime.strptime("2022-01-01 12:00:00", "%Y-%m-%d %H:%M:%S")
# datetimeオブジェクトを文字列に変換
str_obj = datetime_obj.strftime("%Y-%m-%d %H:%M:%S")
print(datetime_obj) # 2022-01-01 12:00:00
print(type(datetime_obj)) # <class 'datetime.datetime'>
print(str_obj) # 2022-01-01 12:00:00
print(type(str_obj)) # <class 'str'>
日時操作の応用例とその活用方法
Pythonのdatetimeモジュールを活用することで、日時操作に関する多くの処理が簡単に実行できます。例えば、以下のような応用例があります。
- 日付の加減算
- 日付の比較
- 曜日の取得
- 日付の書式変換
まとめ
Pythonのdatetimeモジュールを用いることで、文字列から日時への変換や、日時の加減算など、日時操作に関する多くの処理を簡単に実行できます。Webアプリケーション開発においては、日時操作の知識が必須となるため、この記事を参考に、日時操作の基本を身につけましょう。
![[Python]Pandasで指数表記を制御する方法:実践ガイド](https://machine-learning-skill-up.com/knowledge/wp-content/uploads/2023/10/1-4.jpg)
![[Python] DatetimeのFormat処理(F形式、ISO形式、JST形式)](https://machine-learning-skill-up.com/knowledge/wp-content/uploads/2023/11/1-283.jpg)



![[Python]棒グラフと積み上げグラフの作り方](https://machine-learning-skill-up.com/knowledge/wp-content/uploads/2023/12/1-1392.jpg)