[Python-checkins] r43545 - in python/trunk: Doc/lib/libcalendar.tex Lib/calendar.py

walter.doerwald python-checkins at python.org
Sat Apr 1 22:40:23 CEST 2006


Author: walter.doerwald
Date: Sat Apr  1 22:40:23 2006
New Revision: 43545

Modified:
   python/trunk/Doc/lib/libcalendar.tex
   python/trunk/Lib/calendar.py
Log:
Make firstweekday a simple attribute instead
of hiding it behind a setter and a getter.


Modified: python/trunk/Doc/lib/libcalendar.tex
==============================================================================
--- python/trunk/Doc/lib/libcalendar.tex	(original)
+++ python/trunk/Doc/lib/libcalendar.tex	Sat Apr  1 22:40:23 2006
@@ -36,15 +36,6 @@
 
 \class{Calendar} instances have the following methods:
 
-\begin{methoddesc}{firstweekday}{}
-Return the first day of the week (as specified in the constructor
-or changed via \method{setfirstweekday()}).
-\end{methoddesc}
-
-\begin{methoddesc}{setfirstweekday}{weekday}
-Set the first day of the week.
-\end{methoddesc}
-
 \begin{methoddesc}{iterweekdays}{weekday}
 Return an iterator for the week day numbers that will be used
 for one week. The first number from the iterator will be the

Modified: python/trunk/Lib/calendar.py
==============================================================================
--- python/trunk/Lib/calendar.py	(original)
+++ python/trunk/Lib/calendar.py	Sat Apr  1 22:40:23 2006
@@ -128,25 +128,14 @@
     """
 
     def __init__(self, firstweekday=0):
-        self._firstweekday = firstweekday # 0 = Monday, 6 = Sunday
-
-    def firstweekday(self):
-        return self._firstweekday
-
-    def setfirstweekday(self, weekday):
-        """
-        Set weekday (Monday=0, Sunday=6) to start each week.
-        """
-        if not MONDAY <= weekday <= SUNDAY:
-            raise IllegalWeekdayError(weekday)
-        self._firstweekday = weekday
+        self.firstweekday = firstweekday # 0 = Monday, 6 = Sunday
 
     def iterweekdays(self):
         """
         Return a iterator for one week of weekday numbers starting with the
         configured first one.
         """
-        for i in xrange(self._firstweekday, self._firstweekday + 7):
+        for i in xrange(self.firstweekday, self.firstweekday + 7):
             yield i%7
 
     def itermonthdates(self, year, month):
@@ -157,13 +146,13 @@
         """
         date = datetime.date(year, month, 1)
         # Go back to the beginning of the week
-        days = (date.weekday() - self._firstweekday) % 7
+        days = (date.weekday() - self.firstweekday) % 7
         date -= datetime.timedelta(days=days)
         oneday = datetime.timedelta(days=1)
         while True:
             yield date
             date += oneday
-            if date.month != month and date.weekday() == self._firstweekday:
+            if date.month != month and date.weekday() == self.firstweekday:
                 break
 
     def itermonthdays2(self, year, month):
@@ -570,8 +559,14 @@
 # Support for old module level interface
 c = TextCalendar()
 
-firstweekday = c.firstweekday
-setfirstweekday = c.setfirstweekday
+def firstweekday():
+    return c.firstweekday
+
+def setfirstweekday(firstweekday):
+    if not MONDAY <= firstweekday <= SUNDAY:
+        raise IllegalWeekdayError(firstweekday)
+    c.firstweekday = firstweekday
+
 monthcalendar = c.monthdayscalendar
 prweek = c.prweek
 week = c.formatweek


More information about the Python-checkins mailing list