カテゴリ: Python 更新日: 2025/11/13

Pythonで月末・月初を取得する方法を解説!初心者でもわかるcalendarモジュールの使い方

Pythonで月末・月初を取得する方法(calendar モジュールの活用)
Pythonで月末・月初を取得する方法(calendar モジュールの活用)

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

生徒

「Pythonで毎月の最初の日とか、最後の日って簡単に出せるんですか?」

先生

「もちろんできますよ!Pythonのcalendarモジュールを使えば、月初や月末の日付を簡単に取得できます。」

生徒

「月末って何日になるか毎月バラバラですよね。どうやって調べてるんですか?」

先生

「いい質問ですね!それじゃあ実際に、calendarモジュールの使い方を一緒に見ていきましょう。」

-

1. 月初・月末とは?Pythonでどう使う?

1. 月初・月末とは?Pythonでどう使う?
1. 月初・月末とは?Pythonでどう使う?

「月初(げっしょ)」とは、その月の1日、つまり「最初の日」のことです。一方、「月末(げつまつ)」はその月の「最後の日」のことです。たとえば、2024年2月の月初は2月1日、月末は2月29日になります。

毎月の日数は違いますよね?だから自動で「月末の日にち」を出せたら便利です。Pythonではcalendarモジュールを使えば、こうした計算がかんたんにできます。

2. calendarモジュールの基本とは?

2. calendarモジュールの基本とは?
2. calendarモジュールの基本とは?

calendarモジュールは、Pythonに標準で入っているカレンダー関連の機能です。インストールなしで使えて、「その月が何日あるか」「曜日は何か」などを調べることができます。

月末の日を知りたいときはcalendar.monthrange()という関数を使います。これは「年」と「月」を渡すと、「その月の最初の曜日」と「その月の日数(末日)」を返してくれます。

3. 月末を取得する基本コード

3. 月末を取得する基本コード
3. 月末を取得する基本コード

それでは、実際に月末の日付を取得するPythonコードを見てみましょう。例として2025年9月の月末を求めます。


import calendar

year = 2025
month = 9

# 月末を取得
_, last_day = calendar.monthrange(year, month)

print(f"{year}年{month}月の月末は{last_day}日です")

2025年9月の月末は30日です

calendar.monthrange()は、2つの値を返します。最初は「月初の曜日」、2つ目が「月の日数」です。月末を知りたいなら、2つ目の値だけを使えばOKです。

4. 月初を取得する方法も知っておこう

4. 月初を取得する方法も知っておこう
4. 月初を取得する方法も知っておこう

月初の日付は毎月「1日」ですので、特別な関数を使わなくても簡単にわかります。ただし、年月とセットで扱いたいときはdatetime.dateを使って「年月日」の形で持っておくと便利です。


import datetime

year = 2025
month = 9

first_day = datetime.date(year, month, 1)

print("月初は", first_day)

月初は 2025-09-01

このように、1日を指定するだけで月初の日付が表現できます。

-

5. 月末の日付をdatetime形式で取得する方法

5. 月末の日付をdatetime形式で取得する方法
5. 月末の日付をdatetime形式で取得する方法

カレンダーの末日だけでなく、日付として扱いたい場合は、datetime.dateと組み合わせましょう。


import calendar
import datetime

year = 2025
month = 9

_, last_day = calendar.monthrange(year, month)
end_date = datetime.date(year, month, last_day)

print("月末の日付は", end_date)

月末の日付は 2025-09-30

datetime.dateは年月日を扱う便利なクラスで、日付の比較や計算もできます。

6. 現在の月の月末・月初を自動取得する

6. 現在の月の月末・月初を自動取得する
6. 現在の月の月末・月初を自動取得する

その時その時の「今の年月」を使って、月初・月末を取得したい場合は、datetime.datetime.today()を使って今日の日付を取得し、そこから計算します。


import calendar
import datetime

today = datetime.date.today()
year = today.year
month = today.month

# 月初と月末
first_day = datetime.date(year, month, 1)
_, last = calendar.monthrange(year, month)
last_day = datetime.date(year, month, last)

print("月初:", first_day)
print("月末:", last_day)

月初: 2025-09-01
月末: 2025-09-30

このように、現在の年月からも簡単に月初・月末を求めることができます。

7. 月末の日付を使ったよくある用途

7. 月末の日付を使ったよくある用途
7. 月末の日付を使ったよくある用途

月末や月初の日付は、実際の業務やアプリでもよく使われます。たとえば:

  • 給料計算の日付チェック
  • スケジュールの締め切り処理
  • 月末のログ出力や集計

人間だと「今月末は何日だっけ?」とカレンダーを見て確認しますが、プログラムに任せれば自動で正確に処理できます。

8. calendarモジュールで他にできること

8. calendarモジュールで他にできること
8. calendarモジュールで他にできること

calendarモジュールは月末だけでなく、次のような便利機能もあります。

  • calendar.isleap(year):うるう年かどうかを判定
  • calendar.weekday(year, month, day):その日が何曜日か
  • calendar.monthcalendar(year, month):その月のカレンダー表をリストで取得

日付の処理は、datetimeモジュールとcalendarモジュールをうまく組み合わせて使うのがコツです。

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

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

関連記事:
カテゴリの一覧へ
新着記事
PHPの関数の引数と戻り値を完全ガイド!初心者でもわかる基本の使い方
Pythonの例外発生の基本をマスター!初心者でもわかるraise文の使い方ガイド
Pythonでタプルの要素数を取得する方法(len()の使い方)初心者でもわかる数え方の基本
Pythonの辞書をデータフレーム(Pandas)に変換する方法 初心者向け完全ガイド
人気記事
No.1
PHP&Python記事人気No1
Pythonの例外処理をやさしく解説!初心者でもわかるtry-exceptの基本と使い方
No.2
PHP&Python記事人気No2
PHPでJSONデータを扱う方法をやさしく解説!初心者でもわかるjson_encodeとjson_decode
No.3
PHP&Python記事人気No3
PHPのデフォルト引数の設定方法をやさしく解説!初心者でも安心の入門ガイド
No.4
PHP&Python記事人気No4
Pythonのデータ型変換まとめ!int, float, str, list などの変換方法
-