Pythonのcalendarモジュール入門(第1回)|firstweekday()・leapdays()・HTMLCalendarの使い方
プログラミング言語において、内蔵されたカレンダー機能を通じて日付を扱うことは非常に重要です。この記事では、Pythonの標準ライブラリ「calendar」モジュールに用意されている、日付関連のさまざまな関数やクラスの使い方を解説します。
firstweekday() – 週の最初の曜日の番号を取得する
firstweekday()関数を使うと、現在設定されている「週の初日」に対応する番号を確認できます。番号は月曜日を0として、火曜日が1、水曜日が2というように割り当てられています。デフォルト設定では0(月曜日)が返されます。
サンプルコード
import calendar
# 週の開始曜日の番号を出力
print("カレンダーの最初の日の番号は : ")
print(calendar.firstweekday())実行結果
上記のコードを実行すると、次の出力が得られます。
カレンダーの最初の日の番号は : 0
leapdays(開始年, 終了年) – うるう日の数を計算する
leapdays()関数は、指定した2つの年(開始年から終了年まで)の間に存在するうるう日の総数を計算します。なお、終了年自体は範囲に含まれない点に注意してください。
サンプルコード
import calendar
print("1980年から2015年までのうるう日の数:")
print(calendar.leapdays(1980, 2015))実行結果
上記のコードを実行すると、次の出力が得られます。
1980年から2015年までのうるう日の数: 9
HTMLCalendar – HTML形式のカレンダーを出力する
HTMLCalendarクラスを使うと、指定した月のカレンダーをHTML形式(テーブルタグ)で生成できます。formatmonth()メソッドに年と月を渡すことで、その月のカレンダーが出力されます。引数には週の開始曜日も指定可能で、ここではcalendar.TUESDAY(火曜日始まり)を設定しています。Webページ上にカレンダーを表示したい場合に特に便利な機能です。
サンプルコード
import calendar hc = calendar.HTMLCalendar(calendar.TUESDAY) a = hc.formatmonth(2019, 3) print(a)
実行結果
上記のコードを実行すると、2019年3月のカレンダーが以下のようなHTMLテーブル形式で出力されます。
<table border="0" cellpadding="0" cellspacing="0" class="month"> <tr><th colspan="7" class="month">March 2019</th></tr> <tr><th class="tue">Tue</th><th class="wed">Wed</th><th class="thu">Thu</th> <th class="fri">Fri</th><th class="sat">Sat</th><th class="sun">Sun</th><th class="mon">Mon</th></tr> <tr><td class="noday"> </td><td class="noday"> </td><td class="noday"> </td> <td class="fri">1</td><td class="sat">2</td><td class="sun">3</td><td class="mon">4</td></tr> <tr><td class="tue">5</td><td class="wed">6</td><td class="thu">7</td><td class="fri">8</td> <td class="sat">9</td><td class="sun">10</td><td class="mon">11</td></tr> <tr><td class="tue">12</td> <td class="wed">13</td><td class="thu">14</td><td class="fri">15</td><td class="sat">16</td> <td class="sun">17</td><td class="mon">18</td></tr> <tr><td class="tue">19</td><td class="wed">20</td> <td class="thu">21</td><td class="fri">22</td><td class="sat">23</td><td class="sun">24</td> <td class="mon">25</td></tr> <tr><td class="tue">26</td><td class="wed">27</td><td class="thu">28</td> <td class="fri">29</td><td class="sat">30</td><td class="sun">31</td><td class="noday"> </td> </tr></table>
-
Pythonのcalendarモジュール徹底解説:monthrange()、prcal()、weekday()の使い方
このチュートリアルでは、Pythonのcalendarモジュールが提供するさまざまなメソッドについて詳しく解説します。それぞれのメソッドを順番に見ていきましょう。 calendar.monthrange(year, month) calendar.monthrange(year, month)は、指定した月の「開始日の曜日番号」と「その月の日数」を返すメソッドです。戻り値はタプル形式で2つの値が格納されます。実際の例を見てみましょう。 サンプルコード # calendarモジュールをインポート import calendar # 年と月を設定 year = 2019 month = 1 # 曜
-
Pythonでカレンダーを作る方法!calendarモジュールの基本と使い方を解説
Pythonには、カレンダーを扱うためのcalendarという標準モジュールが組み込まれています。この記事では、calendarモジュールの基本的な使い方について解説していきます。calendarモジュールでは、1週間は月曜日から始まり日曜日に終わります。また、このモジュールはグレゴリオ暦(西暦)に準拠しています。それでは、calendarモジュールの便利なメソッドをいくつか見ていきましょう。年間カレンダーを取得する特定の年のカレンダー全体を取得したい場合は、calendar.calendar(year)クラスのインスタンスを作成し、それを出力します。以下に具体例を示します。コード例# cal