Para Python, fecha, hora y fecha fecha Las clases proporcionan varias funciones para tratar fechas, horas e intervalos de tiempo. Las cosas y la fecha y hora en Python son cosas, por lo que cuando las manipula, en realidad está manipulando cosas y no cadenas o marcas de tiempo. Siempre que manipule fechas u horas, debe importar una función de fecha y hora.
Las clases de fecha en Python se clasifican en las 5 clases principales.
- fecha: manipula la fecha exacta (mes, día, año)
- time – Hora del día independiente (hora, minuto, segundo, microondas)
- fecha y hora: combinación de hora y fecha (mes, día, año, hora, segundo, microondas)
- timedelta: tiempo utilizado para manipular fechas
- tzinfo: una clase abstracta para tratar con zonas horarias
En este tutorial, aprenderemos:
Cómo usar Date & Date Class Date
Paso 1) Antes de ejecutar el código para el formato de fecha en Python, es importante que importe los módulos de fecha y hora de Python como se muestra en la siguiente imagen.
Estas declaraciones de importación son piezas funcionales predefinidas en la biblioteca de Python que le permiten manipular fechas y horas, sin escribir ningún código.
Considere los siguientes puntos antes de ejecutar el código de formato de fecha de Python
from datetime import date
Esta línea le dice al intérprete de Python que importe la clase de fecha del módulo de fecha en Python. Lamentablemente, no estamos escribiendo el código para esta funcionalidad de fecha, pero lo importamos para su uso
Paso 2) Luego creamos un ejemplo del objeto de fecha.
Paso 3) A continuación, imprimimos la fecha y pasamos el código.
El resultado es el esperado.
Imprimir fecha usando date.today ()
date.today
la función tiene varias propiedades. Podemos imprimir días / meses / años individuales y muchas otras cosas.
Veamos un ejemplo
Número del día de la semana de hoy
La función date.today () también le da el número de la semana. Aquí está la tabla durante la semana que comienza con el lunes como 0 y el domingo como 6
El número de día de la semana es útil para matrices cuyo índice depende del día de la semana.
Fecha y hora actual de Python: ahora () hoy ()
Paso 1) Como objeto de fecha, también podemos usar «OBJETIVOS DE LOS DATOS» y Python. Python proporciona objetos de fecha y hora, así como la hora i horas, minutos, segundos y milisegundos.
Cuando ejecutamos el código para la fecha y la hora, devuelve la salida con la fecha y la hora actuales.
Paso 2) Con «PROPÓSITO DE LOS DATOS», también puede llamar a una clase de tiempo.
Supongamos que solo queremos imprimir la hora actual sin la fecha.
t = datetime.time(datetime.now())
- Tuvimos la clase de tiempo importado. Le asignaremos el valor actual de tiempo usando datetime.now ()
- Asignamos el valor actual del clima a la variable t.
Y esto solo me dará tiempo. Entonces, ejecutemos este programa.
De acuerdo, puede ver que aquí tengo la fecha y la hora. Y luego la siguiente línea, solo tengo tiempo para mí
Paso 3) Agregaremos nuestro indexador de días de la semana a la lista de edición de nuestra semana para que sepamos qué día es hoy
- El número se asigna de (0-6) a un operador de día de la semana (wd) según el día de la semana actual. Aquí confirmamos la lista de series por días (Lunes, Martes, Cien… Dom).
- Utilice ese valor de índice para saber qué día es. En nuestro caso, es el número 2 y es igual a miércoles, por lo que en la salida imprimirá «Qué miércoles».
Aquí está el código completo para obtener la fecha y hora actuales usando la fecha ahora
Aquí está el código completo para obtener la fecha y hora actuales usando la fecha ahora
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print (today) # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd=date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print("Today is day number %d" % wd) print("which is a " + days[wd]) if __name__== "__main__": main()
Cómo formatear una salida de fecha y hora con una tira ()
Hasta ahora hemos aprendido cómo usar la fecha y la fecha. objeto a Python. Daremos un paso más y aprenderemos a utilizar una función de formato para formatear la fecha y la hora.
Paso 1) Primero veremos un simple paso sobre cómo formatear el año. Lo mejor es entenderlo con un ejemplo.
- Usamos el «función strftime » para formatear.
- Esta función utiliza una código de control dar salida.
- Cada código de control tiene diferentes parámetros como año, mes, día de la semana y fecha [(%y/%Y – Year), (%a/%A- weekday), (%b/%B- month), (%d – day of month)] .
- Nuestro caso es, si («% Y») que es similar al año, imprime el año completo con el siglo (por ejemplo, 2018).
Paso 2) Ahora, si reemplaza una instancia pequeña («% Y»), es decir, («% y) y ejecuta el código, la salida solo mostrará (18) y no (2018). Como se muestra en la captura de pantalla a continuación
Paso 3) La función strf puede declarar la fecha, día, mes y año por separado. Además de cambios menores en el código de control en la aplicación de tiempo extendido, puede formatear el estilo del texto.
Dentro de la función strftime, si reemplaza A mayúscula (% a), es decir, (% A), la salida se imprimirá como «Firday» en lugar de solo una abreviatura «Friday».
Paso 4) Con la ayuda de la función «Strftime» podemos recuperar la hora, la fecha o ambos sistemas locales.
- % C- indica la fecha y hora local
- % X- indica la fecha local
- % X- indica la hora local
En la salida, puede ver el resultado esperado
Paso 5) La «función strftime» le permite llamar la hora en cualquier formato en 24 horas o 12 horas.
Con solo definir un código de control como% I / H durante una hora,% M durante un minuto,% S durante un segundo, la hora se puede llamar a diferentes formatos
12 horas el tiempo es declarado [print now.strftime(«%I:%M:%S %P) ]
24 horas el tiempo es declarado [print now.strftime(«%H:%M»)]
Aquí está el código completo para convertir la fecha y la hora en un objeto String.
# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print(now.strftime("%c")) print(now.strftime("%x")) print(now.strftime("%X")) ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print(now.strftime("%I:%M:%S %p")) # 12-Hour:Minute:Second:AM print(now.strftime("%H:%M")) # 24-Hour:Minute if __name__== "__main__": main()
¿Qué es Timedelta en Python?
Timedelta y Python es un objeto que representa la distancia. Se utiliza principalmente para calcular la distancia entre dos fechas y una hora. También se utiliza para recuperar el objeto con alguna fecha y hora delta. El objeto timedelta admite operaciones matemáticas como sumas, restas, multiplicaciones, divisiones, etc.
Cómo utilizar Timedelta Objects
Con las cosas de Python timedelta, puede estimar el tiempo para el futuro y el pasado. Es decir, cualquier día, fecha u hora especial es un período de tiempo para predecir.
Recuerde que esta función no es para imprimir la hora o la fecha, sino algo con CALCULAR sobre el futuro o el pasado.. Veamos un ejemplo de timedelta de Python para entenderlo mejor.
Paso 1) Para ejecutar Timedelta Object, primero debe confirmar la declaración de importación y luego ejecutar el código
- Escribe una declaración de importación para timedelta
- Ahora escriba el código para imprimir un objeto fuera de un delta de tiempo como se muestra en la captura de pantalla.
- Ejecute el código. El timedelta es un lapso de 365 días, 8 horas y 15 minutos y se imprime igual
¿Confundido? El siguiente paso ayudará a
Paso 2) Obtenemos la fecha y la hora de hoy para comprobar si nuestra declaración de importación está funcionando bien. Cuando se ejecuta un código, imprime la fecha de hoy, lo que significa que nuestra declaración de importación está funcionando bien
Paso 3) Veremos cómo podemos conseguir una fecha dentro de un año a través de cosas delta. Cuando ejecutamos el código, entrega la salida como se esperaba.
Paso 4) Otro ejemplo de cómo se puede usar un delta de tiempo para calcular una fecha futura a partir de la fecha y hora actuales
Paso 5) Veamos un ejemplo más complejo. Quiero saber cuántos días después del año nuevo. Así es como avanzamos
- Usando today = date.today () obtenemos la fecha de hoy
- Sabemos que el año nuevo siempre es el 1 de enero, pero el año puede ser diferente. Usando nyd = date (today.year, 1,1) almacenamos el año nuevo en variables nyd
- más nyd
- ((today-nyd) .days) que da la diferencia entre la fecha actual y el año nuevo en DAY
El resultado muestra que «El día de Año Nuevo ya pasó hace 11 días».
Aquí está el código de trabajo completo
# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print (timedelta(days=365, hours=8, minutes=15)) # print today's date print ("today is: " + str(datetime.now())) # print today's date one year from now print ("one year from now it will be:" + str(datetime.now() + timedelta(days=365))) # create a timedelta that uses more than one argument # print (in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4))) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nydPython 2 Example
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print today # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd = date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print "Today is day number %d" % wd print "which is a " + days[wd] if __name__== "__main__": main()# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print now.strftime("%c") print now.strftime("%x") print now.strftime("%X") ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print now.strftime("%I:%M:%S %p") # 12-Hour:Minute:Second:AM print now.strftime("%H:%M") # 24-Hour:Minute if __name__== "__main__": main()# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print timedelta(days=365, hours=8, minutes=15) # print today's date print "today is: " + str(datetime.now()) # print today's date one year from now print "one year from now it will be:" + str(datetime.now() + timedelta(days=365)) # create a timedelta that uses more than one argument # print "in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4)) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nyd < today: print "New Year day is already went by %d days ago" % ((today - nyd).days)Resumen
Para manipular fechas y horas de formas simples y complejas, un módulo de fecha proporciona diferentes clases o categorías como
- fecha: manipula la fecha exacta (mes, día, año)
- time – Hora del día independiente (hora, minuto, segundo, microondas)
- fecha y hora: combinación de hora y fecha (mes, día, año, hora, segundo, microondas)
- timedelta: tiempo utilizado para manipular fechas
- tzinfo: una clase abstracta para tratar con zonas horarias
Usar objetos de fecha y hora
- Es obligatorio importar elementos en la fecha y hora antes de que se ejecute el código.
- Uso de la función date.today para imprimir la fecha / mes / año individual, así como indexar el día
- Usando el objeto date.time para obtener el tiempo en horas, minutos, segundos y milisegundos
Formateo de tiempo-tiempo con «función str f time»
- Utilice la «función de tiempo str f» para cambiar el formato del año
- Imprima el día, la fecha, el mes y el año por separado,
- Tiempo de llamada para cualquier formato 12 horas o 24 horas
Objetos Timedelta
- Con cosas cronometradas, puede estimar el tiempo para el futuro y el pasado
- Calcule el total de días restantes para el día especial (cumpleaños) a partir de la hora actual
- Calcule el total de días transcurridos para el día especial (cumpleaños) a partir de la hora actual
Excelente ayuda para manejar las fechas/horas en Python! gracias!
Christian Jiménez / Perú