The If any argument is a float and there are fractional microseconds, the fractional microseconds left over from all arguments are combined and their sum is rounded to the nearest microsecond.

If no argument is a float, the conversion and normalization processes are exact (no information is lost).

information dating back-60

This matches the definition of the “proleptic Gregorian” calendar in Dershowitz and Reingold’s book Calendrical Calculations, where it’s the base calendar for all computations.

See the book for algorithms for converting between proleptic Gregorian ordinals and many other calendar systems.

Return a 3-tuple, (ISO year, ISO week number, ISO weekday).

module supplies classes for manipulating dates and times in both simple and complex ways.

While date and time arithmetic is supported, the focus of the implementation is on efficient attribute extraction for output formatting and manipulation. There are two kinds of date and time objects: “naive” and “aware”.

An aware object has sufficient knowledge of applicable algorithmic and political time adjustments, such as time zone and daylight saving time information, to locate itself relative to other aware objects.An aware object is used to represent a specific moment in time that is not open to interpretation [1].A naive object does not contain enough information to unambiguously locate itself relative to other date/time objects.Whether a naive object represents Coordinated Universal Time (UTC), local time, or time in some other timezone is purely up to the program, just like it’s up to the program whether a particular number represents metres, miles, or mass.Naive objects are easy to understand and to work with, at the cost of ignoring some aspects of reality. Supporting timezones at whatever level of detail is required is up to the application.The rules for time adjustment across the world are more political than rational, and there is no standard suitable for every application.