[Python-Dev] Interop between datetime and mxDateTime
Tim Peters
tim.one@comcast.net
Mon, 13 Jan 2003 13:46:05 -0500
[Fredrik Lundh]
> the last revision of the "time type" proposal seems to suggest that all
> time types should implement the following interface:
Calling T datetime.time, and D datetime.datetime:
> tm = timeobject.timetuple()
D yes, T no.
> cmp(timeobject, timeobject)
Both yes, but not a mix of D and T.
> hash(timeobject)
Both yes.
It's curious that that the minimal API doesn't have a way to create a
timeobject ab initio (the only operations here with a timeobject output need
a timeobject as input first).
> and optionally
>
> deltaobject = timeobject - timeobject
D yes, T no.
> floatobject = float(deltaobject) # fractional seconds
datetime.timedelta doesn't have anything like that, but it could be useful.
Converting a timedelta to minutes (or seconds, or whatever) is painful now.
I'd rather see explicit .toseconds(), .tominutes() (etc) methods. A caution
that an IEEE double doesn't necessariy have enough bits of precision so that
roundrip equality can be guaranteed. I expect you'd also need an API to
create a delta object from a number of seconds (in datetime that's spelled
datetime.timedelta(seconds=a_float_int_or_long)
).
> timeobject = timeobject + integerobject
Neither, and unclear what it means (is the integer seconds? milliseconds?
days? etc).
> timeobject = timeobject + floatobject
Neither, likewise.
> timeobject = timeobject + deltaobject
D yes, T no.