Objetos DateTime¶
El módulo datetime proporciona varios objetos de fecha y hora. Antes de usar cualquiera de estas funciones, el archivo de encabezado datetime.h debe estar incluido en su fuente (tenga en cuenta que esto no está incluido en el archivo Python.h), y la macro PyDateTime_IMPORT debe llamarse, generalmente como parte de la función de inicialización del módulo. La macro coloca un puntero a una estructura C en una variable estática, PyDateTimeAPI, que utilizan las siguientes macros.
-
type PyDateTime_Delta¶
Este subtipo de
PyObjectrepresenta la diferencia entre dos valores datetime.
-
PyTypeObject PyDateTime_DateType¶
Esta instancia de
PyTypeObjectrepresenta el date type de Python; es el mismo objeto quedatetime.dateen la capa de Python.
-
PyTypeObject PyDateTime_DateTimeType¶
Esta instancia de
PyTypeObjectrepresenta el datetime type de Python; es el mismo objeto quedatetime.datetimeen la capa de Python.
-
PyTypeObject PyDateTime_TimeType¶
Esta instancia de
PyObjectrepresenta el time type de Python; es el mismo objeto quedatetime.timeen la capa de Python.
-
PyTypeObject PyDateTime_DeltaType¶
Esta instancia de
PyTypeObjectrepresenta un tipo en Python para la diferencia entre dos valore datetime; es el mismo objeto quedatetime.timedeltaen la capa de Python.
-
PyTypeObject PyDateTime_TZInfoType¶
Esta instancia de
PyTypeObjectrepresenta el tipo de Python de time zone info; es el mismo objeto quedatetime.tzinfode la capa de Python.
Macro para acceder al singleton UTC:
-
PyObject *PyDateTime_TimeZone_UTC¶
Retorna la zona horaria singleton que representa UTC, el mismo objeto que
datetime.timezone.utc.Added in version 3.7.
Macros de verificación de tipo:
-
int PyDate_Check(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DateTypeo un subtipo dePyDateTime_DateType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyDate_CheckExact(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DateType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyDateTime_Check(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DateTimeTypeo un subtipo dePyDateTime_DateTimeType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyDateTime_CheckExact(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DateTimeType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyTime_Check(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_TimeTypeo un subtipo dePyDateTime_TimeType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyTime_CheckExact(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_TimeType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyDelta_Check(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DeltaTypeo un subtipo dePyDateTime_DeltaType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyDelta_CheckExact(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_DeltaType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyTZInfo_Check(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_TZInfoTypeo un subtipo dePyDateTime_TZInfoType. ob no debe serNULL. Esta función siempre finaliza con éxito.
-
int PyTZInfo_CheckExact(PyObject *ob)¶
Retorna verdadero si ob es de tipo
PyDateTime_TZInfoType. ob no debe serNULL. Esta función siempre finaliza con éxito.
Macros para crear objetos:
-
PyObject *PyDate_FromDate(int year, int month, int day)¶
- Return value: New reference.
Retorna un objeto
datetime.datecon el año, mes y día especificados.
-
PyObject *PyDateTime_FromDateAndTime(int year, int month, int day, int hour, int minute, int second, int usecond)¶
- Return value: New reference.
Retorna un objeto
datetime.datetimecon el año, mes, día, hora, minuto, segundo y micro segundo especificados.
-
PyObject *PyDateTime_FromDateAndTimeAndFold(int year, int month, int day, int hour, int minute, int second, int usecond, int fold)¶
- Return value: New reference.
Retorna un objeto
datetime.datetimecon el año, mes, día, hora, minuto, segundo, micro segundo y doblez especificados.Added in version 3.6.
-
PyObject *PyTime_FromTime(int hour, int minute, int second, int usecond)¶
- Return value: New reference.
Retorna un objeto
datetime.timecon la hora, minuto, segundo y micro segundo especificados.
-
PyObject *PyTime_FromTimeAndFold(int hour, int minute, int second, int usecond, int fold)¶
- Return value: New reference.
Retorna un objeto
datetime.timecon la hora, minuto, segundo, micro segundo y doblez especificados.Added in version 3.6.
-
PyObject *PyDelta_FromDSU(int days, int seconds, int useconds)¶
- Return value: New reference.
Retorna un objeto
datetime.timedeltaque representa el número dado de días, segundos y micro segundos. La normalización se realiza de modo que el número resultante de micro segundos y segundos se encuentre en los rangos documentados para los objetosdatetime.timedelta.
-
PyObject *PyTimeZone_FromOffset(PyObject *offset)¶
- Return value: New reference.
Retorna un objeto
datetime.timezonecon un desplazamiento fijo sin nombre representado por el argumento offset.Added in version 3.7.
-
PyObject *PyTimeZone_FromOffsetAndName(PyObject *offset, PyObject *name)¶
- Return value: New reference.
Retorna un objeto
datetime.timezonecon un desplazamiento fijo representado por el argumento offset y con tzname name.Added in version 3.7.
Macros para extraer campos de objetos de fecha. El argumento debe ser una instancia de PyDateTime_Date, incluidas las subclases (como PyDateTime_DateTime). El argumento no debe ser NULL, y el tipo no se comprueba.
-
int PyDateTime_GET_YEAR(PyDateTime_Date *o)¶
Regrese el año, como un int positivo.
-
int PyDateTime_GET_MONTH(PyDateTime_Date *o)¶
Regresa el mes, como int del 1 al 12.
-
int PyDateTime_GET_DAY(PyDateTime_Date *o)¶
Retorna el día, como int del 1 al 31.
Macros para extraer campos de objetos de fecha y hora. El argumento debe ser una instancia de PyDateTime_DateTime, incluidas las subclases. El argumento no debe ser NULL y el tipo no es comprobado:
-
int PyDateTime_DATE_GET_HOUR(PyDateTime_DateTime *o)¶
Retorna la hora, como un int de 0 hasta 23.
-
int PyDateTime_DATE_GET_MINUTE(PyDateTime_DateTime *o)¶
Retorna el minuto, como un int de 0 hasta 59.
-
int PyDateTime_DATE_GET_SECOND(PyDateTime_DateTime *o)¶
Retorna el segundo, como un int de 0 hasta 59.
-
int PyDateTime_DATE_GET_MICROSECOND(PyDateTime_DateTime *o)¶
Retorna el micro segundo, como un int de 0 hasta 999999.
-
int PyDateTime_DATE_GET_FOLD(PyDateTime_DateTime *o)¶
Retorna el fold, como int de 0 a 1.
Added in version 3.6.
-
PyObject *PyDateTime_DATE_GET_TZINFO(PyDateTime_DateTime *o)¶
Retorna el tzinfo (que puede ser
None).Added in version 3.10.
Macros para extraer campos de objetos de tiempo. El argumento debe ser una instancia de PyDateTime_Time, incluidas las subclases. El argumento no debe ser NULL y el tipo no es comprobado:
-
int PyDateTime_TIME_GET_HOUR(PyDateTime_Time *o)¶
Retorna la hora, como un int de 0 hasta 23.
-
int PyDateTime_TIME_GET_MINUTE(PyDateTime_Time *o)¶
Retorna el minuto, como un int de 0 hasta 59.
-
int PyDateTime_TIME_GET_SECOND(PyDateTime_Time *o)¶
Retorna el segundo, como un int de 0 hasta 59.
-
int PyDateTime_TIME_GET_MICROSECOND(PyDateTime_Time *o)¶
Retorna el micro segundo, como un int de 0 hasta 999999.
-
int PyDateTime_TIME_GET_FOLD(PyDateTime_Time *o)¶
Retorna el fold, como int de 0 a 1.
Added in version 3.6.
-
PyObject *PyDateTime_TIME_GET_TZINFO(PyDateTime_Time *o)¶
Retorna el tzinfo (que puede ser
None).Added in version 3.10.
Macros para extraer campos de objetos delta de tiempo. El argumento debe ser una instancia de PyDateTime_Delta, incluidas las subclases. El argumento no debe ser NULL y el tipo no es comprobado:
-
int PyDateTime_DELTA_GET_DAYS(PyDateTime_Delta *o)¶
Retorna el número de días, como un int desde -999999999 a 999999999.
Added in version 3.3.
-
int PyDateTime_DELTA_GET_SECONDS(PyDateTime_Delta *o)¶
Retorna el número de segundos, como un int de 0 a 86399.
Added in version 3.3.
-
int PyDateTime_DELTA_GET_MICROSECONDS(PyDateTime_Delta *o)¶
Retorna el número de micro segundos, como un int de 0 a 999999.
Added in version 3.3.
Macros para la conveniencia de módulos que implementan la API DB:
-
PyObject *PyDateTime_FromTimestamp(PyObject *args)¶
- Return value: New reference.
Crea y retorna un nuevo objeto
datetime.datetimedado una tupla de argumentos adecuada para pasar adatetime.datetime.fromtimestamp().
-
PyObject *PyDate_FromTimestamp(PyObject *args)¶
- Return value: New reference.
Crea y retorna un nuevo objeto
datetime.datedado una tupla de argumentos adecuada para pasar adatetime.date.fromtimestamp().