On 3/9/07, BJörn Lindqvist <bjourne at gmail.com> wrote: > On 3/9/07, Guido van Rossum <guido at python.org> wrote: > > On 3/9/07, skip at pobox.com <skip at pobox.com> wrote: > > > The range of datetime objects far exceeds that of the current Unix > > > timestamp. Given that the range of current (32-bit) Unix timestamps is > > > approximately 1970 to 2038, What would the output of this be? > > > > > > dt = datetime.datetime(3000, 1, 1, 0, 0, 0) > > > print dt.totimestamp() > > > dt = datetime.datetime(1900, 1, 1, 0, 0, 0) > > > print dt.totimestamp() > > > > If you extend the range to 64 bits there's no problem: the first > > should print 32503680000, the second -2208988800. > > I think it should be a ValueError, given that the programmer is very > likely to further use the returned timestamp to for example insert > stuff in a database. Unix timestamps are not unambiguously defined for > any years other than 1970 to 2038 imho. But they will be. And they already are on some platforms. The database should raise an OverflowError if a timestamp is out of range, but it would be unpythonic to limit those outcomes to 32 bits. -- --Guido van Rossum (home page: http://www.python.org/~guido/)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4