Una necesidad común en muchas aplicaciones de programación es lidiar con fechas y horas. Python tiene potentes herramientas y paquetes que simplifican el manejo de conversiones de fecha y hora. Este artículo examinará cómo manipular y formatear eficazmente los valores de fecha y hora en Pitón mediante la conversión Cadenas hasta fecha y hora objetos y espalda. Cubriremos el artículo en dos partes:
- Python convierte cadena a fecha y hora
- Python convierte fecha y hora en cadena
¿Cómo convertir una cadena a fecha y hora?
En Python, los usuarios a veces pueden ingresar una fecha como una cadena, por lo que no podemos realizar operaciones de fecha y hora en ella. Operaciones como diferencia horaria, comparación de fechas, trabajo con zonas horarias, etc. no se pueden realizar en fechas de cadena.
primera búsqueda en profundidad del algoritmo
Veamos el proceso de convertir cadenas en fechas con dos métodos.
Input: Dec 4 2018 10:07 AM Output: 2018-12-04 10:07:00 Explanation: In this, we are converting the string to Date Time.>
1. Convierta una cadena a fecha y hora usando Datetime.Strptime()
El tiempo de ejecución() está disponible en el fecha y hora módulo y se utiliza para la conversión de fecha y hora. Esta función cambia el dado cadena de fecha y hora en el formato deseado.
Ejemplo: El programa define una función que convierte la fecha y hora representadas como un cadena a una fecha y hora objeto utilizando el formato deseado. La conversión se realiza utilizando el método datetime.strptime().
Python3
import> datetime> > # Function to convert string to datetime> def> convert(date_time):> >format> => '%b %d %Y %I:%M%p'> >datetime_str>=> datetime.datetime.strptime(date_time,>format>)> > >return> datetime_str> > date_time>=> 'Dec 4 2018 10:07AM'> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
>
Producción:
2018-12-04 10:07:00 )>
2. Convertir cadena a fecha y hora usando Módulo Dateutil
El Fecha útil Es un módulo de terceros. El módulo Dateutil admite el análisis de fechas en cualquier formato de cadena. Este módulo proporciona datos internos sobre las zonas horarias mundiales actuales. Analizar gramaticalmente() puede convertir una cadena de Python al formato de fecha y hora. El único parámetro utilizado es la cadena.
Ejemplo: El programa importa el módulo analizador de la biblioteca dateutil para convertir cadena hasta fecha y hora que tiene una función para analizar cadenas de fecha y hora. La función Parser.parse() reconoce el formato automáticamente, lo que transforma la cadena 23 de junio de 2022 07:31 p.m. en un objeto DateTime.
Python3
from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))> |
>
>
Producción:
2022-06-23 19:31:00>
Leer más: Crear Python Datetime a partir de una cadena
¿Cómo convertir fecha y hora en cadena?
También puede convertir un DateTime en una cadena para diversos fines, como informes, formato personalizado o formato para visualización. Veamos varios métodos para convertir fecha y hora en cadena.
Input: 2018-12-04 10:07:00 Output: Dec 4 2018 10:07:00AM Explanation: In this, we are converting the datetime format to the string>
1. Convertir fecha y hora en cadena u cantar Time.strftime()
Pitón tiempo de ejecución() La función está presente en fecha y hora módulo para crear una representación de cadena basada en la cadena de formato especificada. Estamos usando este método para convertir fecha y hora a cadena en pitón.
Otra función similar está disponible en el módulo de tiempo de Python que convierte un objeto tupla o struct_time en una cadena según lo especificado por el argumento de formato.
Ejemplo: El programa convierte Fecha y hora a cadena e importa el módulo de tiempo de Python, que ofrece funciones para manejar actividades relacionadas con el tiempo. La función convert() toma una tupla datetime_str como entrada, la transforma en una marca de tiempo usando time.mktime() y luego formatea la marca de tiempo en una representación de cadena usando el formato %b%d%Y%r que se proporcionó.
Python3
import> time> > # Function to convert string to datetime> def> convert(datetime_str):> >datetime_str>=> time.mktime(datetime_str)> >format> => '%b %d %Y %r'> >dateTime>=> time.strftime(>format>, time.gmtime(datetime_str))> >return> dateTime> > date_time>=> (>2018>,>12>,>4>,>10>,>7>,>00>,>1>,>48>,>0>)> print>(convert(date_time))> print>(>type>(convert(date_time)))> |
>
¿Qué es una interfaz?
>
Producción:
Dec 04 2018 04:37:00 AM>
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
Aprende más: Cómo formatear la fecha usando strftime() en Python
2. Convertir fecha y hora en cadena usando fecha y hora
Lleve el módulo de fecha y hora a convertir fecha y hora a cadena utilizando la fecha y hora especificadas y cree un objeto de fecha y hora. Cree una cadena de formato que describa los requisitos de formato para el objeto de fecha y hora.
Para crear una cadena en el formato deseado, utilice el método strftime() del objeto DateTime. La cadena de formato es el argumento de la función strftime().
Ejemplo: El programa importa el módulo datetime, que brinda a los programadores de Python acceso a clases para trabajar con fechas y horas. Los valores de fecha y hora proporcionados, 14 de marzo de 2022, a las 15:30:00, se utilizan para generar un objeto de fecha y hora. El objeto de fecha y hora se transforma en una representación de cadena basada en la cadena de formato utilizando el método strftime().
Python3
import> datetime> > datetime_object>=> datetime.datetime(>2022>,>3>,>14>,>15>,>30>,>0>)> > format_string>=> '%Y-%m-%d %H:%M:%S'> > # Convert the datetime object to a string in the specified format> date_string>=> datetime_object.strftime(format_string)> > print>(date_string)> print>(>type>(date_string))> |
>
>
Producción:
2022-03-14 15:30:00>
Complejidad del tiempo: O(1)
Espacio Auxiliar: O(1)
En este artículo, cubrimos los métodos para convertir cadenas a fecha y hora y viceversa. Convertir fecha y hora en cadenas o viceversa puede resultar muy útil y conveniente en programación. Puede utilizar estos métodos para convertir fechas y horas en cadenas o viceversa.
Lea también:
- Convirtiendo la cadena 'aaaa-mm-dd' en DateTime en Python
- Cómo convertir fecha y hora a fecha en Python