Python
 Computer >> コンピューター >  >> プログラミング >> Python

【Python入門】calendarモジュールで年・月のカレンダーを表示する方法

このチュートリアルでは、Pythonの標準ライブラリである calendar モジュールを使って、指定した年や月のカレンダーをコンソールに表示する方法を解説します。Pythonならわずか数行のコードで実装でき、必要な情報は「年」と「月」の数値だけです。

年間カレンダーを表示する方法

まずは、1年分のカレンダーを一括で表示する方法から見ていきましょう。以下の手順で実装できます。

  • calendar モジュールをインポートする
  • 年を表す数値を変数に代入する
  • calendar.calendar(year) を使ってカレンダーを出力する

サンプルコード

# calendarモジュールをインポート
import calendar

# 年を設定
year = 2020

# カレンダーを表示
print(calendar.calendar(year))

実行結果

上記のコードを実行すると、2020年1月から12月までのカレンダーがまとめて表示されます。出力イメージは以下のとおりです(ここでは最初の3ヶ月分のみ抜粋しています)。

                                  2020

      January                    February                    March
Mo Tu We Th Fr Sa Su        Mo Tu We Th Fr Sa Su        Mo Tu We Th Fr Sa Su
       1  2  3  4  5                             1  2                          1
 6  7  8  9 10 11 12         3  4  5  6  7  8  9         2  3  4  5  6  7  8
13 14 15 16 17 18 19        10 11 12 13 14 15 16         9 10 11 12 13 14 15
20 21 22 23 24 25 26        17 18 19 20 21 22 23        16 17 18 19 20 21 22
27 28 29 30 31              24 25 26 27 28 29           23 24 25 26 27 28 29
                                                        30 31

(以下、April〜Decemberまで同様に表示されます)

特定の月のカレンダーを表示する方法

続いて、特定の1ヶ月分だけのカレンダーを表示する方法です。こちらも手順はほぼ同じで、月の数値を追加するだけでOKです。

  • calendar モジュールをインポートする
  • 年と月の数値をそれぞれ変数に代入する
  • calendar.month(year, month) を使ってカレンダーを出力する

サンプルコード

# calendarモジュールをインポート
import calendar

# 年と月を設定
year = 2020
month = 1

# カレンダーを表示
print(calendar.month(year, month))

実行結果

プログラムを実行すると、2020年1月のカレンダーが次のように出力されます。

    January 2020
Mo Tu We Th Fr Sa Su
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

応用:週の始まりの曜日を変更する

デフォルトでは、カレンダーは月曜日始まりで表示されます。日曜日始まりに変更したい場合は、calendar.setfirstweekday(calendar.SUNDAY) を呼び出すだけで切り替えられます。用途に合わせてカスタマイズしてみてください。

まとめ

Pythonのcalendarモジュールを使えば、calendar.calendar() で年間カレンダーを、calendar.month() で月間カレンダーを、それぞれ1行で簡単に表示できます。本チュートリアルについて不明な点があれば、コメント欄でお気軽にお尋ねください。

  1. Pythonでパターンを出力する方法|三角形・数字・アルファベット・ピラミッドのコード例

    Pythonでパターンを出力するには、ネストされた(入れ子構造の)forループを使用します。外側のループで行数を制御し、内側のループで列数を処理します。そしてprint文を工夫することで、目的に応じたさまざまなパターンを作成できます。パターンには、星(アスタリスク)パターン、数字パターン、アルファベットパターンなどがあり、三角形やピラミッドなど、さまざまな形状にも対応できます。パターン出力の基本これらのパターンは、print文を少し変更しながらforループを組み合わせることで出力できます。基本的な考え方はどのパターンも共通しており、違いはごくわずかです。ここからは、代表的なパターンのコードを実

  2. Pythonでカレンダーを作る方法!calendarモジュールの基本と使い方を解説

    Pythonには、カレンダーを扱うためのcalendarという標準モジュールが組み込まれています。この記事では、calendarモジュールの基本的な使い方について解説していきます。calendarモジュールでは、1週間は月曜日から始まり日曜日に終わります。また、このモジュールはグレゴリオ暦(西暦)に準拠しています。それでは、calendarモジュールの便利なメソッドをいくつか見ていきましょう。年間カレンダーを取得する特定の年のカレンダー全体を取得したい場合は、calendar.calendar(year)クラスのインスタンスを作成し、それを出力します。以下に具体例を示します。コード例# cal