Back to index

python3.2  3.2.2
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
datetime.date Class Reference
Inheritance diagram for datetime.date:
Inheritance graph
[legend]
Collaboration diagram for datetime.date:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def __new__
def fromtimestamp
def today
def fromordinal
def __repr__
def ctime
def strftime
def __format__
def isoformat
def year
def month
def day
def timetuple
def toordinal
def replace
def __eq__
def __ne__
def __le__
def __lt__
def __ge__
def __gt__
def __hash__
def __add__
def __sub__
def weekday
def isoweekday
def isocalendar
def __reduce__

Private Member Functions

def _cmp
def _getstate
def __setstate

Private Attributes

 _year
 _month
 _day

Static Private Attributes

string __slots__ = '_year'
 __str__ = isoformat
 __radd__ = __add__

Detailed Description

Concrete date type.

Constructors:

__new__()
fromtimestamp()
today()
fromordinal()

Operators:

__repr__, __str__
__cmp__, __hash__
__add__, __radd__, __sub__ (add/radd only with timedelta arg)

Methods:

timetuple()
toordinal()
weekday()
isoweekday(), isocalendar(), isoformat()
ctime()
strftime()

Properties (readonly):
year, month, day

Definition at line 631 of file datetime.py.


Member Function Documentation

def datetime.date.__add__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 844 of file datetime.py.

00844 
00845     def __add__(self, other):
00846         "Add a date to a timedelta."
00847         if isinstance(other, timedelta):
00848             o = self.toordinal() + other.days
00849             if 0 < o <= _MAXORDINAL:
00850                 return date.fromordinal(o)
00851             raise OverflowError("result out of range")
00852         return NotImplemented

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.__eq__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 802 of file datetime.py.

00802 
00803     def __eq__(self, other):
00804         if isinstance(other, date):
00805             return self._cmp(other) == 0
00806         return NotImplemented

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.__format__ (   self,
  fmt 
)

Definition at line 740 of file datetime.py.

00740 
00741     def __format__(self, fmt):
00742         if len(fmt) != 0:
00743             return self.strftime(fmt)
00744         return str(self)

Here is the call graph for this function:

def datetime.date.__ge__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 822 of file datetime.py.

00822 
00823     def __ge__(self, other):
00824         if isinstance(other, date):
00825             return self._cmp(other) >= 0
00826         return NotImplemented

Here is the call graph for this function:

def datetime.date.__gt__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 827 of file datetime.py.

00827 
00828     def __gt__(self, other):
00829         if isinstance(other, date):
00830             return self._cmp(other) > 0
00831         return NotImplemented

Here is the call graph for this function:

def datetime.date.__hash__ (   self)

Reimplemented in datetime.datetime.

Definition at line 838 of file datetime.py.

00838 
00839     def __hash__(self):
00840         "Hash."
00841         return hash(self._getstate())

Here is the call graph for this function:

def datetime.date.__le__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 812 of file datetime.py.

00812 
00813     def __le__(self, other):
00814         if isinstance(other, date):
00815             return self._cmp(other) <= 0
00816         return NotImplemented

Here is the call graph for this function:

def datetime.date.__lt__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 817 of file datetime.py.

00817 
00818     def __lt__(self, other):
00819         if isinstance(other, date):
00820             return self._cmp(other) < 0
00821         return NotImplemented

Here is the call graph for this function:

def datetime.date.__ne__ (   self,
  other 
)

Reimplemented in datetime.datetime.

Definition at line 807 of file datetime.py.

00807 
00808     def __ne__(self, other):
00809         if isinstance(other, date):
00810             return self._cmp(other) != 0
00811         return NotImplemented

Here is the call graph for this function:

def datetime.date.__new__ (   cls,
  year,
  month = None,
  day = None 
)
Constructor.

Arguments:

year, month, day (required, base 1)

Definition at line 661 of file datetime.py.

00661 
00662     def __new__(cls, year, month=None, day=None):
00663         """Constructor.
00664 
00665         Arguments:
00666 
00667         year, month, day (required, base 1)
00668         """
00669         if (isinstance(year, bytes) and len(year) == 4 and
00670             1 <= year[2] <= 12 and month is None):  # Month is sane
00671             # Pickle support
00672             self = object.__new__(cls)
00673             self.__setstate(year)
00674             return self
00675         _check_date_fields(year, month, day)
00676         self = object.__new__(cls)
00677         self._year = year
00678         self._month = month
00679         self._day = day
00680         return self

Here is the call graph for this function:

def datetime.date.__reduce__ (   self)

Reimplemented in datetime.datetime.

Definition at line 915 of file datetime.py.

00915 
00916     def __reduce__(self):
00917         return (self.__class__, self._getstate())

Here is the call graph for this function:

def datetime.date.__repr__ (   self)
Convert to formal string, for repr().

>>> dt = datetime(2010, 1, 1)
>>> repr(dt)
'datetime.datetime(2010, 1, 1, 0, 0)'

>>> dt = datetime(2010, 1, 1, tzinfo=timezone.utc)
>>> repr(dt)
'datetime.datetime(2010, 1, 1, 0, 0, tzinfo=datetime.timezone.utc)'

Reimplemented in datetime.datetime.

Definition at line 707 of file datetime.py.

00707 
00708     def __repr__(self):
00709         """Convert to formal string, for repr().
00710 
00711         >>> dt = datetime(2010, 1, 1)
00712         >>> repr(dt)
00713         'datetime.datetime(2010, 1, 1, 0, 0)'
00714 
00715         >>> dt = datetime(2010, 1, 1, tzinfo=timezone.utc)
00716         >>> repr(dt)
00717         'datetime.datetime(2010, 1, 1, 0, 0, tzinfo=datetime.timezone.utc)'
00718         """
00719         return "%s(%d, %d, %d)" % ('datetime.' + self.__class__.__name__,
00720                                    self._year,
00721                                    self._month,
                                   self._day)
def datetime.date.__setstate (   self,
  string 
) [private]

Definition at line 909 of file datetime.py.

00909 
00910     def __setstate(self, string):
00911         if len(string) != 4 or not (1 <= string[2] <= 12):
00912             raise TypeError("not enough arguments")
00913         yhi, ylo, self._month, self._day = string
00914         self._year = yhi * 256 + ylo

Here is the caller graph for this function:

def datetime.date.__sub__ (   self,
  other 
)
Subtract two dates, or a date and a timedelta.

Reimplemented in datetime.datetime.

Definition at line 855 of file datetime.py.

00855 
00856     def __sub__(self, other):
00857         """Subtract two dates, or a date and a timedelta."""
00858         if isinstance(other, timedelta):
00859             return self + timedelta(-other.days)
00860         if isinstance(other, date):
00861             days1 = self.toordinal()
00862             days2 = other.toordinal()
00863             return timedelta(days1 - days2)
00864         return NotImplemented

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date._cmp (   self,
  other 
) [private]

Reimplemented in datetime.datetime.

Definition at line 832 of file datetime.py.

00832 
00833     def _cmp(self, other):
00834         assert isinstance(other, date)
00835         y, m, d = self._year, self._month, self._day
00836         y2, m2, d2 = other._year, other._month, other._day
00837         return _cmp((y, m, d), (y2, m2, d2))

def datetime.date._getstate (   self) [private]

Reimplemented in datetime.datetime.

Definition at line 905 of file datetime.py.

00905 
00906     def _getstate(self):
00907         yhi, ylo = divmod(self._year, 256)
00908         return bytes([yhi, ylo, self._month, self._day]),

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.ctime (   self)

Reimplemented in datetime.datetime.

Definition at line 728 of file datetime.py.

00728 
00729     def ctime(self):
00730         "Return ctime() style string."
00731         weekday = self.toordinal() % 7 or 7
00732         return "%s %s %2d 00:00:00 %04d" % (
00733             _DAYNAMES[weekday],
00734             _MONTHNAMES[self._month],
00735             self._day, self._year)

Here is the call graph for this function:

def datetime.date.day (   self)
day (1-31)

Definition at line 770 of file datetime.py.

00770 
00771     def day(self):
00772         """day (1-31)"""
00773         return self._day

Here is the caller graph for this function:

def datetime.date.fromordinal (   cls,
  n 
)
Contruct a date from a proleptic Gregorian ordinal.

January 1 of year 1 is day 1.  Only the year, month and day are
non-zero in the result.

Definition at line 696 of file datetime.py.

00696 
00697     def fromordinal(cls, n):
00698         """Contruct a date from a proleptic Gregorian ordinal.
00699 
00700         January 1 of year 1 is day 1.  Only the year, month and day are
00701         non-zero in the result.
00702         """
00703         y, m, d = _ord2ymd(n)
00704         return cls(y, m, d)

Here is the call graph for this function:

def datetime.date.fromtimestamp (   cls,
  t 
)

Definition at line 684 of file datetime.py.

00684 
00685     def fromtimestamp(cls, t):
00686         "Construct a date from a POSIX timestamp (like time.time())."
00687         y, m, d, hh, mm, ss, weekday, jday, dst = _time.localtime(t)
00688         return cls(y, m, d)

def datetime.date.isocalendar (   self)
Return a 3-tuple containing ISO year, week number, and weekday.

The first ISO week of the year is the (Mon-Sun) week
containing the year's first Thursday; everything else derives
from that.

The first week is 1; Monday is 1 ... Sunday is 7.

ISO calendar algorithm taken from
http://www.phys.uu.nl/~vgent/calendar/isocalendar.htm

Definition at line 876 of file datetime.py.

00876 
00877     def isocalendar(self):
00878         """Return a 3-tuple containing ISO year, week number, and weekday.
00879 
00880         The first ISO week of the year is the (Mon-Sun) week
00881         containing the year's first Thursday; everything else derives
00882         from that.
00883 
00884         The first week is 1; Monday is 1 ... Sunday is 7.
00885 
00886         ISO calendar algorithm taken from
00887         http://www.phys.uu.nl/~vgent/calendar/isocalendar.htm
00888         """
00889         year = self._year
00890         week1monday = _isoweek1monday(year)
00891         today = _ymd2ord(self._year, self._month, self._day)
00892         # Internally, week and day have origin 0
00893         week, day = divmod(today - week1monday, 7)
00894         if week < 0:
00895             year -= 1
00896             week1monday = _isoweek1monday(year)
00897             week, day = divmod(today - week1monday, 7)
00898         elif week >= 52:
00899             if today >= _isoweek1monday(year+1):
00900                 year += 1
00901                 week = 0
00902         return year, week+1, day+1

Here is the call graph for this function:

def datetime.date.isoformat (   self)
Return the date formatted according to ISO.

This is 'YYYY-MM-DD'.

References:
- http://www.w3.org/TR/NOTE-datetime
- http://www.cl.cam.ac.uk/~mgk25/iso-time.html

Definition at line 745 of file datetime.py.

00745 
00746     def isoformat(self):
00747         """Return the date formatted according to ISO.
00748 
00749         This is 'YYYY-MM-DD'.
00750 
00751         References:
00752         - http://www.w3.org/TR/NOTE-datetime
00753         - http://www.cl.cam.ac.uk/~mgk25/iso-time.html
00754         """
00755         return "%04d-%02d-%02d" % (self._year, self._month, self._day)

Here is the caller graph for this function:

def datetime.date.isoweekday (   self)

Definition at line 871 of file datetime.py.

00871 
00872     def isoweekday(self):
00873         "Return day of the week, where Monday == 1 ... Sunday == 7."
00874         # 1-Jan-0001 is a Monday
00875         return self.toordinal() % 7 or 7

Here is the call graph for this function:

def datetime.date.month (   self)
month (1-12)

Definition at line 765 of file datetime.py.

00765 
00766     def month(self):
00767         """month (1-12)"""
00768         return self._month

Here is the caller graph for this function:

def datetime.date.replace (   self,
  year = None,
  month = None,
  day = None 
)
Return a new date with new values for the specified fields.

Definition at line 789 of file datetime.py.

00789 
00790     def replace(self, year=None, month=None, day=None):
00791         """Return a new date with new values for the specified fields."""
00792         if year is None:
00793             year = self._year
00794         if month is None:
00795             month = self._month
00796         if day is None:
00797             day = self._day
00798         _check_date_fields(year, month, day)
00799         return date(year, month, day)

Here is the call graph for this function:

def datetime.date.strftime (   self,
  fmt 
)

Definition at line 736 of file datetime.py.

00736 
00737     def strftime(self, fmt):
00738         "Format using strftime()."
00739         return _wrap_strftime(self, fmt, self.timetuple())

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.timetuple (   self)

Reimplemented in datetime.datetime.

Definition at line 776 of file datetime.py.

00776 
00777     def timetuple(self):
00778         "Return local time tuple compatible with time.localtime()."
00779         return _build_struct_time(self._year, self._month, self._day,
00780                                   0, 0, 0, -1)

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.today (   cls)

Definition at line 690 of file datetime.py.

00690 
00691     def today(cls):
00692         "Construct a date from time.time()."
00693         t = _time.time()
00694         return cls.fromtimestamp(t)

Here is the caller graph for this function:

def datetime.date.toordinal (   self)
Return proleptic Gregorian ordinal for the year, month and day.

January 1 of year 1 is day 1.  Only the year, month and day values
contribute to the result.

Definition at line 781 of file datetime.py.

00781 
00782     def toordinal(self):
00783         """Return proleptic Gregorian ordinal for the year, month and day.
00784 
00785         January 1 of year 1 is day 1.  Only the year, month and day values
00786         contribute to the result.
00787         """
00788         return _ymd2ord(self._year, self._month, self._day)

Here is the call graph for this function:

Here is the caller graph for this function:

def datetime.date.weekday (   self)

Definition at line 865 of file datetime.py.

00865 
00866     def weekday(self):
00867         "Return day of the week, where Monday == 0 ... Sunday == 6."
00868         return (self.toordinal() + 6) % 7

Here is the call graph for this function:

def datetime.date.year (   self)
year (1-9999)

Definition at line 760 of file datetime.py.

00760 
00761     def year(self):
00762         """year (1-9999)"""
00763         return self._year

Here is the caller graph for this function:


Member Data Documentation

datetime.date.__radd__ = __add__ [static, private]

Reimplemented in datetime.datetime.

Definition at line 853 of file datetime.py.

string datetime.date.__slots__ = '_year' [static, private]

Reimplemented in datetime.datetime.

Definition at line 659 of file datetime.py.

datetime.date.__str__ = isoformat [static, private]

Definition at line 756 of file datetime.py.

datetime.date._day [private]

Definition at line 678 of file datetime.py.

Definition at line 677 of file datetime.py.

Reimplemented in datetime.datetime.

Definition at line 676 of file datetime.py.


The documentation for this class was generated from the following file: