カテゴリ: Python 更新日: 2026/02/05

Pythonで曜日を取得する方法を完全解説!初心者でもわかるweekday()とisoweekday()

Pythonで曜日を取得する方法(weekday() / isoweekday())
Pythonで曜日を取得する方法(weekday() / isoweekday())

先生と生徒の会話形式で理解しよう

生徒

「Pythonで今日が何曜日かを調べることはできますか?カレンダーを見なくても分かるようにしたいです」

先生

「できますよ。Pythonには日付や時間を扱う機能が用意されていて、曜日を数字として取り出すことができます」

生徒

「数字で曜日が分かるんですか?日曜日とか月曜日じゃなくても大丈夫なんですか?」

先生

「最初は数字で出てきますが、仕組みを理解すればとても便利です。基本から順番に説明していきましょう」

-

1. Pythonで曜日を取得するとはどういうことか

1. Pythonで曜日を取得するとはどういうことか
1. Pythonで曜日を取得するとはどういうことか

Pythonで曜日を取得するとは、ある日付が月曜日なのか火曜日なのかといった情報を、プログラムの中で自動的に調べることです。人間はカレンダーを見れば曜日が分かりますが、コンピュータは自分で考えることができません。そのため、曜日を計算するための仕組みがあらかじめ用意されています。

Pythonでは「日時操作」と呼ばれる分野で、日付や時間を扱います。日時操作とは、日付を保存したり、日付を比べたり、曜日を調べたりする一連の作業のことです。今回の記事では、その中でも特に初心者がつまずきやすい「曜日の取得」に焦点を当てて解説します。

2. datetimeモジュールの基本を知ろう

2. datetimeモジュールの基本を知ろう
2. datetimeモジュールの基本を知ろう

Pythonで日付や曜日を扱うときは、datetimeモジュールというものを使います。モジュールとは、便利な道具がひとまとめになった箱のような存在です。datetimeモジュールには、日付や時間を扱うための道具がたくさん入っています。

まずは、今日の日付を取得してみましょう。難しく感じるかもしれませんが、今は「こう書くと今日の日付が分かるんだな」くらいの理解で大丈夫です。


import datetime

today = datetime.date.today()
print(today)

2026-01-16

このように、年・月・日が自動的に表示されます。この日付を元にして、曜日を調べることができます。

3. weekday()メソッドで曜日を数字で取得する

3. weekday()メソッドで曜日を数字で取得する
3. weekday()メソッドで曜日を数字で取得する

weekday()は、曜日を数字で取得するための方法です。ここでいうメソッドとは、特定の動作を行う命令のことです。weekday()を使うと、月曜日を0として、火曜日が1、水曜日が2というように数字が割り当てられます。

最初は数字だけを見ると分かりにくいですが、プログラムの中で条件分岐をするときにとても役立ちます。


import datetime

today = datetime.date.today()
weekday_number = today.weekday()
print(weekday_number)

4

この結果が4であれば、月曜日を0と数えて5番目の日、つまり金曜日であることが分かります。数字と曜日の対応を覚えておくことが大切です。

4. isoweekday()メソッドとの違いを理解しよう

4. isoweekday()メソッドとの違いを理解しよう
4. isoweekday()メソッドとの違いを理解しよう

isoweekday()も曜日を取得する方法ですが、数字の割り当て方が少し違います。こちらは月曜日が1、日曜日が7になります。日曜日が7になるため、人間の感覚に近いと感じる人も多いです。


import datetime

today = datetime.date.today()
iso_number = today.isoweekday()
print(iso_number)

5

同じ金曜日でも、weekday()では4、isoweekday()では5になります。この違いを知らずに使うと、曜日がずれてしまう原因になるので注意が必要です。

-

5. 数字を日本語の曜日に変換する考え方

5. 数字を日本語の曜日に変換する考え方
5. 数字を日本語の曜日に変換する考え方

数字だけでは分かりにくい場合、日本語の曜日に変換したくなることがあります。その場合は、曜日の名前を並べた一覧を用意して、数字を元に取り出す方法がよく使われます。


import datetime

weekdays = ["月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日", "日曜日"]

today = datetime.date.today()
print(weekdays[today.weekday()])

金曜日

このようにすると、数字の意味を意識しなくても、分かりやすい形で曜日を表示できます。

6. 特定の日付の曜日を調べる方法

6. 特定の日付の曜日を調べる方法
6. 特定の日付の曜日を調べる方法

今日だけでなく、過去や未来の曜日を調べたいこともあります。その場合は、日付を自分で指定します。例えば、誕生日や記念日が何曜日かを調べることができます。


import datetime

date = datetime.date(2025, 12, 25)
print(date.isoweekday())

4

この結果から、指定した日付が木曜日であることが分かります。カレンダーを見なくても曜日が分かるのは、とても便利です。

7. weekday()とisoweekday()を使い分けるポイント

7. weekday()とisoweekday()を使い分けるポイント
7. weekday()とisoweekday()を使い分けるポイント

weekday()とisoweekday()は、どちらが正しいというものではありません。プログラムの目的によって使い分けます。例えば、配列の番号として使うなら0から始まるweekday()が便利です。一方で、人に見せる前提で曜日を扱うなら、1から始まるisoweekday()の方が直感的です。

初心者のうちは、どちらを使っているかを必ず意識することが大切です。混ぜて使ってしまうと、曜日の判定を間違えてしまう原因になります。

8. 曜日取得が役立つ具体的な場面

8. 曜日取得が役立つ具体的な場面
8. 曜日取得が役立つ具体的な場面

曜日を取得できるようになると、平日と休日で処理を変えたり、特定の曜日だけ動く仕組みを作ったりできます。例えば、月曜日だけ特別な表示をしたり、土日は処理を止めたりといったことが可能になります。

このように、Pythonで曜日を取得する方法を知っておくと、日常生活に近い処理をプログラムで表現できるようになります。初心者のうちは、まず曜日が数字で取得できるという仕組みをしっかり理解することが大切です。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
Python
Pythonの抽象クラスを完全ガイド!初心者でも分かるABCモジュールの基本と使い方
New2
Python
Pythonの書き方を基本から解説!はじめてのPythonプログラム
New3
Python
Pythonの正規表現(reモジュール)の基本!パターンマッチングを学ぼう
New4
Python
Pythonのエスケープシーケンスとは?改行・タブ・特殊文字の使い方
-
人気記事
No.1
Java&Spring記事人気No1
PHP
PHP の型変換を完全ガイド!初心者でもわかる明示的変換・自動変換
No.2
Java&Spring記事人気No2
PHP
PHPの認証機能を完全ガイド!初心者でもわかる安全なログイン・ログアウトの仕組み
No.3
Java&Spring記事人気No3
PHP
PHPのJWT認証を完全ガイド!初心者でもわかるJSON Web Tokenの基本と安全な仕組み
No.4
Java&Spring記事人気No4
PHP
PHP のインストール方法(Windows・Mac・Linux)と開発環境
No.5
Java&Spring記事人気No5
PHP
PHPのpassword_hashを完全ガイド!初心者でもわかる安全なパスワードの保存方法
No.6
Java&Spring記事人気No6
Python
PythonでMySQLに接続する方法を完全解説!初心者でもわかるpymysqlの基本
No.7
Java&Spring記事人気No7
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
No.8
Java&Spring記事人気No8
Python
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
-
-