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

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">&nbsp;</td><td class="noday">&nbsp;</td><td class="noday">&nbsp;</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">&nbsp;</td>
</tr></table>
  1. Pythonのcalendarモジュール徹底解説:monthrange()、prcal()、weekday()の使い方

    このチュートリアルでは、Pythonのcalendarモジュールが提供するさまざまなメソッドについて詳しく解説します。それぞれのメソッドを順番に見ていきましょう。 calendar.monthrange(year, month) calendar.monthrange(year, month)は、指定した月の「開始日の曜日番号」と「その月の日数」を返すメソッドです。戻り値はタプル形式で2つの値が格納されます。実際の例を見てみましょう。 サンプルコード # calendarモジュールをインポート import calendar # 年と月を設定 year = 2019 month = 1 # 曜

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

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