この記事では、Pythonを使用して日付から曜日を取得する方法を解説します。
datetime
モジュール、calendarモジュール、dateutil
モジュールを使った曜日取得の手順を紹介します。
Python初心者でも簡単に理解できるので、ぜひ参考にしてください。
日付から曜日を取得する方法とは
日付から曜日を取得する方法は、Pythonの標準ライブラリやサードパーティライブラリを使用することで簡単に実装することができます。
主な方法としては、datetime
モジュール、calendarモジュール、dateutil
モジュールがあります。
それぞれのモジュールを使った曜日取得方法を見ていきましょう。
datetimeモジュールの利用
datetime
モジュールは日付や時間を操作するための機能を提供しています。
日付から曜日を取得するには、datetimeモジュールのweekday()
メソッドを使用します。
このメソッドは月曜日を0、日曜日を6として、指定した日付の曜日を整数で返します。
import datetime
date = datetime.date(2022, 10, 31)
weekday = date.weekday()
print(weekday) # 火曜日の場合、結果は1となる
calendarモジュールの利用
calendar
モジュールはカレンダー関連の機能を提供しています。
日付から曜日を取得するには、calendarモジュールのweekday()関数
を使用します。
この関数は月曜日を0、日曜日を6として、指定した日付の曜日を整数で返します。
import calendar
date = (2022, 10, 31)
weekday = calendar.weekday(*date)
print(weekday) # 火曜日の場合、結果は1となる
dateutilモジュールの利用
dateutil
モジュールは日付や時間の操作を簡単に行うためのユーティリティライブラリです。
日付から曜日を取得するには、dateutilモジュールのparserクラスを使用します。
このクラスのparse()
メソッドを使うことで、日付文字列から曜日を取得することができます。
from dateutil import parser
date_str = "2022-10-31"
date = parser.parse(date_str)
weekday = date.weekday()
print(weekday) # 火曜日の場合、結果は1となる
datetimeモジュールを使用した曜日取得の手順
datetimeモジュールのインポート
Pythonのdatetimeモジュール
を使用するには、まずモジュールをインポートする必要があります。
以下のように記述します。
import datetime
日付データの作成
datetimeモジュール
を使用して、日付データを作成します。
例えば、2022年3月15日の日付データを作成する場合は、以下のようにします。
date = datetime.datetime(2022, 3, 15)
曜日の取得
作成した日付データから曜日を取得するには、weekday()
メソッドを使用します。
このメソッドは月曜日を0、日曜日を6として、曜日を表す数値を返します。
例えば、水曜日の場合は2が返されます。
weekday = date.weekday()
print(weekday)
このようにして、datetimeモジュール
を使用して日付から曜日を取得することができます。
calendarモジュールを使用した曜日取得の手順
calendarモジュールのインポート
Pythonのcalendar
モジュールを使用すると、日付から曜日を取得することができます。
まずは、calendar
モジュールをインポートします。
import calendar
曜日の取得
calendar
モジュールを使用して、指定した日付の曜日を取得する方法は以下の通りです。
import calendar
# 年、月、日を指定
year = 2022
month = 10
day = 15
# 曜日を取得
weekday = calendar.weekday(year, month, day)
# 曜日の番号を曜日名に変換
days = ["月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日", "日曜日"]
day_name = days[weekday]
print(f"{year}年{month}月{day}日は{day_name}です。")
2022年10月15日は土曜日です。
上記のコードでは、calendar.weekday(year, month, day)
で指定した日付の曜日を取得し、その結果を曜日名に変換して出力しています。
これにより、calendar
モジュールを使用して日付から曜日を取得することができます。
dateutilモジュールを使用した曜日取得の手順
dateutilモジュール
を使用して、日付から曜日を取得する方法を以下に示します。
from dateutil import parser
date_string = "2022-10-15"
date = parser.parse(date_string)
day_of_week = date.strftime("%A")
print(day_of_week)
Saturday
上記のコードでは、dateutilモジュール
のparserを使用して日付の文字列を日付オブジェクトに変換し、strftime("%A")
を使って曜日を取得しています。
このコードを実行すると、指定した日付の曜日が出力されます。