5.17 calendar -- 一般的なカレンダーに関する関数群

このモジュールはUnixcalプログラムのようなカレンダー出力を 行い、それに加えてカレンダーに関する有益な関数群を提供します。標準ではこ れらのカレンダーは(ヨーロッパの慣例に従って)月曜日を週の始まりとし、日 曜日を最後の日としています。 setfirstweekday()を用いることで、日曜日(6)や他の曜日を週の始 まりに設定することができます。日付を表す引数は整数値で与えます。

このモジュールで提供する関数のほとんどは datetime に依存しており、 過去も未来も現代のグレゴリオ暦を利用します。この方式はDershowitzとReingold の書籍「Calendrical Calculations」にあるproleptic Gregorian暦に一致しており、 同書では全ての計算の基礎となる暦としています。

setfirstweekday( weekday)
週の最初の曜日(0は月曜日, 6は日曜日)を設定します。定数 MONDAY, TUESDAY, WEDNESDAY,THURSDAY, FRIDAY, SATURDAY及びSUNDAY は便宜上提供されています。 例えば、日曜日を週の開始日に設定するとき:

import calendar
calendar.setfirstweekday(calendar.SUNDAY)
バージョン2.0 以降で新規追加された 仕様です。

firstweekday( )
現在設定されている週の最初の曜日を返します。 バージョン2.0 以降で新規追加された 仕様です。

isleap( year)
yearが閏年なら1を、そうでなければ0を返します。

leapdays( y1, y2)
範囲(y1...y2)指定された期間の閏年の回数を返します。 ここでy1y2は年を表します。 バージョン2.0 以降で変更された 仕様: Python 1.5.2では、この関数は世紀をまたがった範囲では動作 しません。

weekday( year, month, day)
year(1970-...), month (1-12), day(1-31)で与えられた日の曜日(0は月曜日)を 返します。

weekheader( n)
曜日の短縮名の入ったヘッダを返します。n には個々の曜日を 表す文字列の長さを指定します。

monthrange( year, month)
yearmonthで指定された月の一日の曜日と日数を返します。

monthcalendar( year, month)
月のカレンダーを行列で返します。各行が週を表し、月の範囲外の日は0になり ます。 それぞれの週はsetfirstweekday()で設定をしていない限り月曜日か ら始まります。

prmonth( theyear, themonth[, w[, l]])
month()関数によって返される月のカレンダーを出力します。

month( theyear, themonth[, w[, l]])
月のカレンダーを複数行の文字列で返します。wにより日の列幅を変える ことができ、それらはセンタリングされます。lにより各週の表示される 行数を変えることができます。週の最初の曜日は setfirstweekday()関数の設定に依存します。 バージョン2.0 以降で新規追加された 仕様です。

prcal( year[, w[, l[c]]])
calendar()関数で返される一年間のカレンダーを出力します。

calendar( year[, w[, l[c]]])
3列からなる一年間のカレンダーを複数行の文字列で返します。任意の引数 w,l, 及びcはそれぞれ、日付列の表示幅、各週の行数及び 月と月の間のスペースの数を変更するためのものです。週の最初の曜日は setfirstweekday()関数の設定に依存します。出力されるカレンダー の起点となる年はプラットフォームに依存します。 バージョン2.0 以降で新規追加された 仕様です。

timegm( tuple)
関連はありませんが便利な関数で、timeモジュールの gmtime()関数の戻値のような時間のタプルを受け取り、 1970年を 起点とし、POSIX規格のエンコードによるUnixのタイムスタンプに相当する 値を返します。実際、time.gmtime()timegm()は反対 の動作をします。 バージョン2.0 以降で新規追加された 仕様です。

参考資料:

timeモジュール:
低レベルの時間に関連した関数群。.
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。