Extraer tiempo de datetime en Python

En este artículo vamos a ver cómo extraer la hora de DateTime en Python.

En Python, no existe un tipo de tipo de datos como DateTime, primero, tenemos que crear nuestros datos en formato DateTime y luego convertiremos nuestros datos DateTime en hora. Se usa un módulo de Python para convertir los datos al formato de fecha y hora, pero en el artículo usaremos el módulo de fecha y hora para realizar esta tarea.

Sintaxis: fechahora.strptime()

Parámetros: 

  • arg: puede ser entero, flotante, tupla, Serie, Marco de datos para convertir en fecha y hora como su tipo de datos
  • formato: Este será str, pero el valor predeterminado es Ninguno. El strftime para analizar el tiempo, por ejemplo, «%d/%m/%Y», tenga en cuenta que «%f» analizará hasta nanosegundos.

por ejemplo – > formato = “%Y%b%d%H%M%S”

por ejemplo, datetime_obj = datetime.strptime(“19022002101010″,”%d%m%Y%H%M%S”) # Devolverá el objeto de fecha y hora.

Extraer tiempo del objeto DateTime

En esta sección, extraeremos la hora del objeto DateTime.

Convertimos nuestra string en un objeto DateTime, ahora extraemos la hora de nuestro objeto DateTime llamando al método .time() .

Sintaxis: .tiempo()

Devoluciones: devolverá la hora del objeto datetime

A continuación se muestra la implementación:

Python3

# import important module
import datetime
from datetime import datetime
  
# Create datetime string
datetime_str = "24AUG2001101010"
  
# call datetime.strptime to convert
# it into datetime datatype
datetime_obj = datetime.strptime(datetime_str, 
                                 "%d%b%Y%H%M%S")
  
# It will print the datetime object
print(datetime_obj)
  
# extract the time from datetime_obj
time = datetime_obj.time()
  
  
# it will print time that 
# we have extracted from datetime obj
print(time) 

Producción: 

2001-08-24 10:10:10
10:10:10

Extraer hora de tiempo

En esta sección, extraeremos horas del tiempo extraído del objeto DateTime, los 3 pasos son los mismos que en el ejemplo anterior. En este ejemplo, agregaremos el método .hour para extraer horas del objeto DateTime.

Tenemos que extraer el tiempo, por lo que la siguiente parte es extraer las horas del objeto DateTime, llamando al método .hour.

Sintaxis: .hora

Retorno : devolverá la hora desde la marca de tiempo.

A continuación se muestra la implementación:

Python3

# import important module
import datetime
from datetime import datetime
  
# Create datetime string
datetime_str = "31OCT2020231032"
  
# call datetime.strptime to convert
# it into datetime datatype
datetime_obj = datetime.strptime(datetime_str, "%d%b%Y%H%M%S")
  
# It will print the datetime object
print("date time : {}".format(datetime_obj))
  
# extract the time from datetime_obj
time = datetime_obj.time()
  
# it will print time that
# we have extracted from datetime obj
print("Time : {}".format(time)) 
  
# extract hour from time
hour = time.hour
print("Hour : {}".format(hour))

Producción: 

date time : 2020-10-31 23:10:32
Time : 23:10:32
Hour : 23

Extraer minutos y segundos del tiempo.

En este ejemplo, agregaremos el método .minute, .second para extraer minutos y segundos del objeto DateTime.

Python3

# import important module
import datetime
from datetime import datetime
  
# Create datetime string
datetime_str = "10JAN300123000"
  
# call datetime.strptime to
# convert it into datetime datatype
datetime_obj = datetime.strptime(datetime_str,
                                 "%d%b%Y%H%M%S")
  
# It will print the datetime object
print("date time : {}".format(datetime_obj))
  
# extract the time from datetime_obj
time = datetime_obj.time()
  
# it will print time that we
# have extracted from datetime obj
print("Time : {}".format(time)) 
  
# extract minute from time
minute = time.minute
print("Minute : {}".format(minute))
  
# extract second from time
second = time.second
print("Second : {}".format(second))

Salida

date time : 3001-01-10 23:00:00
Time : 23:00:00
Minute : 0
Second : 0

Determinar el tiempo, si la nota de fecha cae en el rango

Si la fecha no cae dentro del rango, entonces el código nos dará un ‘ValueError’. Para determinar la hora con este error, lo que podemos hacer es usar declaraciones de excepción y decirle al usuario que ingresó la fecha incorrecta y que no puede obtener la hora a partir de esa fecha, porque esa fecha nunca existió, así que cómo el tiempo debe existir en esa fecha.

Python3

# import important module
import datetime
from datetime import datetime
  
# Create datetime string
datetime_str = "32JAN2022102356"
try:
    
    # call datetime.strptime to convert it into
    # datetime datatype
    datetime_obj = datetime.strptime(datetime_str,
                                     "%d%b%Y%H%M%S")
      
    # It will print the datetime object
    print("date time : {}".format(datetime_obj))
except:
    print("You have entered Incorrect Date, please enter a valid date")

Producción:

Ha ingresado una fecha incorrecta, ingrese una fecha válida

Publicación traducida automáticamente

Artículo escrito por dev247kumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *