home | O'Reilly's CD bookshelfs | FreeBSD | Linux | Cisco | Cisco Exam  


Previous Section Next Section

12.3 The calendar Module

The calendar module supplies calendar-related functions, including functions to print a text calendar for any given month or year. By default, calendar considers Monday the first day of the week and Sunday the last one. You can change this setting by calling function calendar.setfirstweekday. calendar handles years in the range supported by module time, typically 1970 to 2038. Module calendar supplies the following functions.

calendar

calendar(year,w=2,l=1,c=6)

Returns a multiline string with a calendar for year year formatted into three columns separated by c spaces. w is the width in characters of each date; each line has length 21*w+18+2*c. l is the number of lines used for each week.

firstweekday

firstweekday(  )

Returns the current setting for the weekday that starts each week. By default, when calendar is first imported, this is 0, meaning Monday.

isleap

isleap(year)

Returns True if year is a leap year, otherwise False.

leapdays

leapdays(y1,y2)

Returns the total number of leap days in the years in range(y1,y2).

month

month(year,month,w=2,l=1)

Returns a multiline string with a calendar for month month of year year, one line per week plus two header lines. w is the width in characters of each date; each line has length 7*w+6. l is the number of lines for each week.

monthcalendar

monthcalendar(year,month)

Returns a list of lists of integers. Each sublist represents a week. Days outside month month of year year are represented by a placeholder value of 0; days within the given month are represented by their dates, from 1 on up.

monthrange

monthrange(year,month)

Returns a pair of integers. The first item is the code of the weekday for the first day of the month month in year year; the second item is the number of days in the month. Weekday codes are 0 (Monday) to 6 (Sunday); month numbers are 1 (January) to 12 (December).

prcal

prcal(year,w=2,l=1,c=6)

Like print calendar.calendar(year,w,l,c).

prmonth

prmonth(year,month,w=2,l=1)

Like print calendar.month(year,month,w,l).

setfirstweekday

setfirstweekday(weekday)

Sets the first day of each week to the weekday code weekday. Weekday codes are 0 (Monday) to 6 (Sunday). Module calendar also supplies attributes MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, and SUNDAY, whose values are the integers 0 to 6. Use these attributes when you mean weekday codes (e.g., calendar.FRIDAY instead of 4), to make your code clearer and more readable.

timegm

timegm(tupletime)

The inverse of time.gmtime: accepts a time instant in time-tuple form and returns the same instant as a floating-point number of seconds since the epoch.

weekday

weekday(year,month,day)

Returns the weekday code for the given date. Weekday codes are 0 (Monday) to 6 (Sunday); month numbers are 1 (January) to 12 (December).

    Previous Section Next Section