Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> python

Python DateTime, TimeDelta, Strftime (formato) con ejemplos

En Python, fecha, hora y fechahora Las clases proporcionan una serie de funciones para tratar con fechas, horas e intervalos de tiempo. La fecha y la fecha y hora en Python son los objetos, por lo que cuando los manipula, en realidad está manipulando objetos y no cadenas o marcas de tiempo. Siempre que manipule las fechas o la hora, debe importar la función de fecha y hora.

Las clases de fecha y hora en Python se clasifican en 5 clases principales.

En este tutorial, aprenderemos-

Cómo usar la clase de fecha y fecha y hora

Paso 1 ) Antes de ejecutar el código para el formato de fecha y hora en Python, es importante que importe los módulos de fecha y hora de Python como se muestra en la siguiente captura de pantalla.

Estas declaraciones de importación son piezas de funcionalidad 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 y hora 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 y hora en Python. No estamos escribiendo el código para esta funcionalidad de fecha, por desgracia, solo lo estamos importando para nuestro uso

Paso 2 ) A continuación, creamos una instancia del objeto de fecha.

Paso 3 ) A continuación, imprimimos la fecha y ejecutamos el código.

El resultado es el esperado.

Imprimir fecha usando date.today()

date.today La función tiene varias propiedades asociadas. Podemos imprimir día/mes/año individual y muchas otras cosas

Veamos un ejemplo

Número de día de la semana de hoy

La función date.today() también le da el número del día de la semana. Aquí está la tabla de días de la semana que comienza con el lunes como 0 y el domingo como 6

Día
Número de día de la semana
Lunes
0
martes
1
miércoles
2
Jueves
3
Viernes
4
Sábado
5
Domingo
6


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) Al igual que los objetos de fecha, también podemos usar “OBJETOS DE FECHA Y HORA” en Python. Los objetos de fecha y hora de Python proporcionan la fecha junto con la hora en horas, minutos, segundos y milisegundos.

Cuando ejecutamos el código para fecha y hora, da la salida con la fecha y hora actuales.

Paso 2) Con "DATETIME OBJECT", también puede llamar a la clase de tiempo.

Supongamos que queremos imprimir solo la hora actual sin la fecha.

t = datetime.time(datetime.now())

Y esto me dará el tiempo justo. Así que ejecutemos este programa.

Bien, entonces puedes ver que aquí tengo la fecha y la hora. Y luego la siguiente línea, solo tengo el tiempo por sí mismo

Paso 3) Aplicaremos nuestro indexador de días de la semana a nuestro arrayList de días de la semana para saber qué día es hoy


Aquí está el código completo para obtener la fecha y hora actuales usando datetime now

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 la salida de fecha y hora con Strftime()

A partir de ahora, hemos aprendido cómo usar el objeto datetime y date en Python. Avanzaremos un paso más y aprenderemos a usar una función de formateo para formatear la hora y la fecha.

Paso 1) Primero veremos un paso simple de cómo formatear el año. Es mejor entender con un ejemplo.

Paso 2) Ahora, si reemplaza ("%Y") con minúsculas, es decir, ("%y) y ejecuta el código, la salida mostrará solo (18) y no (2018). El siglo del año no se mostrará como se muestra en la siguiente captura de pantalla

Paso 3) La función Strf puede declarar la fecha, el día, el mes y el año por separado. Además, con pequeños cambios en el código de control en la función strftime, puede formatear el estilo del texto.

Dentro de la función strftime, si reemplaza (%a) con A mayúscula, es decir, (%A), la salida se imprimirá como "Firday" en lugar de solo una abreviatura "Fri".

Paso 4) Con la ayuda de la función "Strftime" también podemos recuperar la hora, fecha o ambas del sistema local.

  1. %C- indica la fecha y hora local
  2. %x- indica la fecha local
  3. %X- indica la hora local

En la salida, puede ver el resultado esperado

Paso 5) La "función strftime" le permite llamar a la hora en cualquier formato de 24 horas o 12 horas.

Simplemente definiendo un código de control como %I/H para la hora, %M para el minuto, %S para el segundo, uno puede llamar la hora para diferentes formatos

12 horas se declara el tiempo [print now.strftime(“%I:%M:%S %p) ]

24 horas se declara la hora [print now.strftime(“%H:%M”)]

Aquí está el código completo para convertir datetime a 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 en Python es un objeto que representa la duración. Se utiliza principalmente para calcular la duración entre dos fechas y horas. 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 Objetos Timedelta

Con los objetos timedelta de Python, puede estimar el tiempo tanto para el futuro como para el pasado. En otras palabras, es un intervalo de tiempo para predecir cualquier día, fecha u hora especial.

Recuerde que esta función no es para imprimir la hora o la fecha, sino algo para CALCULAR sobre el futuro o el pasado . Veamos un ejemplo de timedelta de Python para entenderlo mejor.

Paso 1) Para ejecutar Timedelta Objects, primero debe declarar la declaración de importación y luego ejecutar el código

  1. Escribir declaración de importación para timedelta
  2. Ahora escriba el código para imprimir el objeto desde el tiempo delta como se muestra en la captura de pantalla
  3. Ejecute el código. El timedelta representa un lapso de 365 días, 8 horas y 15 minutos e imprime lo mismo

¿Confuso? El siguiente paso ayudará-

Paso 2) Obtengamos la fecha y la hora de hoy para verificar si nuestra declaración de importación funciona bien. Cuando se ejecuta el código, imprime la fecha de hoy, lo que significa que nuestra declaración de importación funciona bien

Paso 3) Veremos cómo podemos recuperar la fecha dentro de un año a través de objetos delta. Cuando ejecutamos el código, da el resultado esperado.

Paso 4) Otro ejemplo de cómo se puede usar el delta de tiempo para calcular una fecha futura a partir de la fecha y hora actuales

Paso 5) Veamos un ejemplo más complejo. Me gustaría determinar cuántos días después del Año Nuevo. Así es como procederemos

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 nyd < today:
    print ("New Year day is already went by %d days ago" % ((today - nyd).days))

Ejemplo de Python 2

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 manera simple y compleja, el módulo datetime proporciona diferentes clases o categorías como

Uso de objetos de fecha y hora

Tiempo de espera de formateo con "función de tiempo str f"

Objetos Timedelta


python

  1. Fecha y hora de Python
  2. ¿Cómo obtener la fecha y hora actuales en Python?
  3. Python Obtener la hora actual
  4. Módulo de tiempo de Python
  5. Sueño de Python ()
  6. Declaración Python Print():cómo imprimir con ejemplos
  7. Python String count () con EJEMPLOS
  8. Python String format() Explicar con EJEMPLOS
  9. Método Python String find() con ejemplos
  10. Funciones Python Lambda con EJEMPLOS
  11. Función Python round() con EJEMPLOS