All pastes #829068 Raw Edit

printCalendar.py

public python v1 · immutable
#829068 ·published 2007-12-22 22:12 UTC
rendered paste body
#!/usr/bin/env python#coding=utf-8#printCalendar.py"""print the calendar for any year from year 1 to year 9998,or any single month in that range of years."""import calendarprint \"""This program will print the calendarfor any year from year 1 through year 9998,pcalor any single month in year 1 through 9999.For year 1, Monday will be first day of week."""while True:    calendar.setfirstweekday(6) # i.e., to Sunday    while True:        try:            year = int(raw_input("enter year e.g. 1937, in range 1-9999: "))            break        except ValueError:            print            print 'You did not enter a year as an integer in range 1-9999'                 if year < 1 or year > 9999:        print "You entered a year outside range 1-9999"        continue        if year == 9999:        print        print "Cannot print whole year of 9999; individual months ARE possible, so enter one now"    elif year == 1:        calendar.setfirstweekday(0) # Monday (Can't use Sunday for year 1)        while True:        try:            prompt = "Enter month as integer in range 1-12, or enter 0 to print whole year: "            month = int(raw_input(prompt))            break        except ValueError:            print            print "You didn't enter an integer"        while 0 > month or 12 < month:        print        print "You didn't enter 0 to print whole year or month as integer in range 1-12"        month = int(raw_input("Enter 0, or month as integer in range 1-12: "))        print    if month == 0:        print        calendar.prcal(year)    else:        print        calendar.prmonth(year, month)    again = raw_input("\nAgain? Enter anything for Yes; Enter nothing for No ")    if again == "":        break