En este artículo, vamos a ver cómo convertir la string de «Formato desconocido» en el objeto DateTime en Python.
Supongamos que hay dos strings que contienen fechas en un formato desconocido y ese formato no lo conocemos. Aquí todo lo que sabemos es que ambas strings contienen expresiones válidas de fecha y hora. Usando el módulo dateutil que contiene un analizador de fechas que puede analizar strings de fechas en muchos formatos.
Veamos algunos ejemplos que ilustran esta conversión de muchas maneras:
Ejemplo 1: convertir strings de «formato desconocido» en objetos de fecha y hora
En el siguiente ejemplo, el formato desconocido especificado de la string de fecha «19750503T080120» se analiza en un formato conocido válido del objeto DateTime.
Python3
# Python3 code to illustrate the conversion of # "unknown format" strings to DateTime objects # Importing parser from the dateutil.parser import dateutil.parser as parser # Initializing an unknown format date string date_string = "19750503T080120" # Calling the parser to parse the above # specified unformatted date string # into a datetime objects date_time = parser.parse(date_string) # Printing the converted datetime object print(date_time)
Producción:
1975-05-03 08:01:20
Ejemplo 2: convertir la fecha y la hora actual en objetos de fecha y hora
En el siguiente ejemplo, la fecha y la hora actuales se han analizado en el objeto de fecha y hora.
Python3
# Python3 code to illustrate the conversion of # "unknown format" strings to DateTime objects # Importing parser from the dateutil.parser and # dt from datetime module import dateutil.parser as parser import datetime as dt # Calling the now() function to # return the current datetime now = dt.datetime.now() # Calling the isoformat() to return the # current datetime in isoformat and print it print(now.isoformat()) # Now calling the parser to parse the # above returned isoformat datetime into # a valid known format of datetime object print(parser.parse(now.isoformat()))
Producción:
2021-08-20T13:35:23.829488 2021-08-20 13:35:23.829488
A veces, las strings de fecha y hora pueden ser ambiguas, como que 01-02-2003 podría significar el 2 de enero o el 1 de febrero. Para eliminar esta ambigüedad, tenemos dos parámetros, como díaprimero y añoprimero, que se ilustran en los siguientes ejemplos.
Ejemplo 3: convertir un formato desconocido específico en objetos de fecha y hora
En el siguiente ejemplo, la fecha y hora especificada es «10-09-2021». El análisis() ha utilizado el parámetro dayfirst como verdadero y devuelve el resultado como «2021-09-10 00:00:00», es decir, 9 de octubre del año 2021.
Python3
# Python3 code to illustrate the conversion of # "unknown format" strings to DateTime objects # Importing parser from the dateutil.parser import dateutil.parser as parser # Now parsing the "10-09-2021" datetime with # dayfirst parameter B = parser.parse("10-09-2021", dayfirst = True) # Printing the parsed datetime print(B)
Producción:
2021-09-10 00:00:00
Publicación traducida automáticamente
Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA