2009-08-21 9 views

Respuesta

5

Si está utilizando los valores de fecha y hora estándar de Unix tema representable entonces el momento más temprano de tiempo está de vuelta en 1970:

>>> import time 
>>> time.gmtime(0) 
(1970, 1, 1, 0, 0, 0, 3, 1, 0) 
+4

realidad no, para time.gmtime() Es -67768040609740804 para la 1.st de enero del año -2147481748. –

13

en Python, el objeto de fecha y hora exporta las siguientes constantes

datetime.MINYEAR 
The smallest year number allowed in a date or datetime object. MINYEAR is 1. 

datetime.MAXYEAR 
The largest year number allowed in a date or datetime object. MAXYEAR is 9999. 

http://docs.python.org/library/datetime.html

5

Ciertas funciones en el módulo datetime obedecen datetime.MINYEAR y datetime.MAXYEAR y levantará un ValueException para fechas fuera de ese rango. Estos se asignan a 1 y 9999, respectivamente.

El módulo calender depende en gran medida del módulo datetime, pero en general, observa el “proleptic Gregorian”, que se extiende indefinidamente en ambas direcciones.

el módulo time tampoco impone restricciones particulares sobre los elementos del año en los valores de tupla de tiempo, y calcula los tiempos y las fechas usando solo segundos desde la época.


Dicho esto, no se puede procesar de forma fiable fechas antes de febrero de alrededor de 12, de 1582, cuando se adoptó el calendario gregoriano. Antes de ese día, las fechas se computaban usando una variedad de calendarios dependientes de la ubicación, para los cuales no hay soporte en python estándar.

32

Si se utiliza el módulo datetime, date, time, y datetime objetos todos tienen un atributo min y max.

>>> from datetime import date, time, datetime 
>>> date.min 
datetime.date(1, 1, 1) 
>>> date.max 
datetime.date(9999, 12, 31) 
>>> time.min 
datetime.time(0, 0) 
>>> time.max 
datetime.time(23, 59, 59, 999999) 
>>> datetime.min 
datetime.datetime(1, 1, 1, 0, 0) 
>>> datetime.max 
datetime.datetime(9999, 12, 31, 23, 59, 59, 999999) 
Cuestiones relacionadas