date_utils
app.utils.date_utils
Módulo de Python para validaciones de fechas.
Para más información, te recomendamos leer la documentación del Proyecto.
Warning
estas funciones:
1 |
|
- https://docs.python.org/3/library/datetime.html
- https://pleac.sourceforge.net/pleac_python/datesandtimes.html
get_current_time(type_format=None, date_format=False, use_delta=False)
Devuelve la fecha y hora actual, en formato YYYY-MM-DD H:mm:ss
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
type_format | Literal[str] | especifica si el valor de retorno de la función, es un | None |
date_format | bool | especifica si el valor de retorno de la función estará en formato | False |
use_delta | bool | sí se envía en | False |
Returns:
Type | Description |
---|---|
Optional[str | datetime] | la fecha y hora actual en formato |
Examples:
get_timestamp(as_str=False)
Genera una marca de tiempo(timestamp) en formato YmdHMS
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
as_str | bool | define si el timestamp será devuelto en formato | False |
Returns:
Type | Description |
---|---|
Optional[str | datetime] | el timestamp ó |
Examples:
days_between_dates(init_date, end_date, return_as='seconds')
Calcula el tiempo transcurrido entre dos fechas.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
init_date | Any | la fecha inicial, en formato | required |
end_date | Any | la fecha final, en formato | required |
return_as | Literal[str] | el formato de retorno de la función, por defecto | 'seconds' |
Notes
los valores admitidos por el parámetro return_as
son:
- 'dict': para este caso devolverá un diccionario con el tiempo transcurrido en horas, minutos y segundos.
- 'days'
- 'hours'
- 'minutes'
- 'seconds'
Returns:
Type | Description |
---|---|
Any | el tiempo transcurrido entre dos fechas, el valor de retorno se establece según el parámetro |
Examples:
to_date(current_date, type_format='date')
Convierte una fecha (string en fomato YYYY-MM-DD
) a un objeto de tipo datetime
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
current_date | str | la fecha actual en formato | required |
type_format | str | Defaults to "date". | 'date' |
Warning
esta función:
- se encuentra en revisión, puede cambiar en el futuro.
- se necesitan más pruebas y ejemplos.
Returns:
Type | Description |
---|---|
Any | la fecha (string en fomato |
Examples:
is_valid_date(date_to_validate)
is_valid_hour(time_to_validate)
compare_dates(init_date, end_date, compare='eq')
Compara dos fechas en formato YYYY-MM-DD
, utilizando un prefijo para realizar la comparación (el parámetro compare
).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
init_date | str | la fecha inicial en formato | required |
end_date | str | la fecha final en formato | required |
compare | Literal[str] | un prefijo para realizar las comparaciones, por defecto | 'eq' |
Notes
los valores admitidos por el parámetro compare
son:
- 'eq': igual
- 'gr': mayor
- 'le': menor
- 'gt': mayor ó igual
- 'lt': menor ó igual
Returns:
Type | Description |
---|---|
bool | el resultado de la comparación ó |
Examples:
compare_times(init_time, end_time, compare='eq')
Compara dos horas en formato H:M:S
, utilizando un prefijo para realizar la comparación (el parámetro compare
).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
init_time | str | la hora inicial en formato | required |
end_time | str | la hora final en formato | required |
compare | str | un prefijo para realizar las comparaciones, por defecto | 'eq' |
Notes
los valores admitidos por el parámetro compare
son:
- 'eq': igual
- 'gr': mayor
- 'le': menor
- 'gt': mayor ó igual
- 'lt': menor ó igual
Returns:
Type | Description |
---|---|
bool | el resultado de la comparación |
Examples:
add_days(current_date, num_days=1)
Agrega días a una fecha dada.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
current_date | str | la fecha a validar en formato | required |
num_days | int | el número de días a agregar, por defecto | 1 |
Returns:
Type | Description |
---|---|
Optional[str] | la nueva fecha en formato |
Examples:
add_months(init_date, add_months=1)
Agrega meses a una fecha dada.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
init_date | str | la fecha a validar en formato | required |
add_months | int | el número de meses a agregar, por defecto | 1 |
Returns:
Type | Description |
---|---|
Optional[str] | la nueva fecha en formato |
Examples:
add_time(count, unit_time, init_hour=None)
Agrega horas, minutos ó segundos a una hora dada.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
count | int | la cantidad de tiempo a agregar | required |
unit_time | Literal[] | la unidad de tiempo a agregar | required |
init_hour | str | la hora a validar en formato | None |
Returns:
Type | Description |
---|---|
Optional[str] | la nueva hora en formato |
Examples:
add_date(count, unit_time, init_date=None)
Agrega días, horas, minutos ó segundos a una fecha y hora dada.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
count | int | la cantidad de tiempo a agregar | required |
unit_time | Literal[] | la unidad de tiempo a agregar | required |
init_date | str | la fecha y hora a validar, en formato | None |
Returns:
Type | Description |
---|---|
Optional[str] | la nueva fecha y hora en formato |
Examples:
date_to_str(obj_date, default_format=DEFAULT_FORMAT)
Convierte un objeto tipo date/datetime a str, utilizando el formato por defecto (DEFAULT_FORMAT
).
Parameters:
Name | Type | Description | Default |
---|---|---|---|
obj_date | Any | objeto tipo date/datetime | required |
default_format | str | el formato a covertir, por defecto ( | DEFAULT_FORMAT |
Returns:
Type | Description |
---|---|
Optional[str] | la nueva fecha y hora en el formato envíado, ó |
Examples: