logo

Converteix la cadena a DateTime i viceversa a Python

Una necessitat comuna en moltes aplicacions de programació és tractar les dates i les hores. Python té eines i paquets potents que simplifiquen la gestió de les conversions de data i hora. Aquest article examinarà com manipular i formatar de manera efectiva els valors de data i hora Python mitjançant la conversió Cordes a Datetime objectes i esquena. Cobrirem l'article en dues parts:

  • Python Converteix String a DateTime
  • Python Converteix Datetime en String

Com convertir String a DateTime?

A Python, els usuaris de vegades poden introduir una data com a cadena a causa de la qual no podem fer-hi operacions de data i hora. Operacions com la diferència horària, la comparació de dates, el treball amb zones horàries, etc. no es poden fer en dates de cadena.



zeenat aman actor

Vegem el procés de conversió de cadenes a dates amb dos mètodes.

  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. Converteix String a Datetime mitjançant Datetime.Strptime()

El Strptime() està disponible a la data i hora mòdul i s'utilitza per a la conversió de data i hora. Aquesta funció canvia el donat cadena de Datetime al format desitjat.

Exemple: El programa defineix una funció que converteix la data i l'hora representada com a cadena a una data i hora objecte utilitzant el format desitjat. La conversió es realitza mitjançant el mètode datetime.strptime().



Python 3






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)))>

>

>

Sortida:

2018-12-04 10:07:00 )>

2. Converteix String a Datetime usant Mòdul Dateutil

El Dateutil és un mòdul de tercers. El mòdul Dateutil admet l'anàlisi de dates en qualsevol format de cadena. Aquest mòdul ofereix dades internes sobre les zones horàries mundials actuals. Analitzar () pot convertir una cadena de Python al format de data i hora. L'únic paràmetre utilitzat és la cadena.

Exemple: El programa importa el mòdul analitzador de la biblioteca dateutil per convertir-lo cadena a datetime que té una funció per analitzar les cadenes de data i hora. La funció Parser.parse() reconeix el format automàticament, que transforma la cadena 23 de juny de 2022 07:31 PM en un objecte DateTime.

Python 3




from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))>

>

>

Sortida:

2022-06-23 19:31:00>

Llegeix més: Creeu Python Datetime des de la cadena

Com convertir Datetime en String?

També podeu convertir un DateTime en una cadena per a diversos propòsits, com ara informes, format personalitzat o format per a la visualització. Vegem diversos mètodes per convertir datetime 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. Converteix Datetime a String u canta Time.strftime()

Python strftime() la funció està present a data i hora mòdul per crear una representació de cadena basada en la cadena de format especificada. Estem utilitzant aquest mètode per convertir datetime a cadena en Python.

Una altra funció similar està disponible al mòdul de temps de Python que converteix una tupla o un objecte struct_time en una cadena tal com s'especifica per l'argument format.

Exemple: El programa convertits Datetime a String i importa el mòdul de temps Python, que ofereix funcions per gestionar activitats relacionades amb el temps. La funció convert() pren una tupla datetime_str com a entrada, la transforma en una marca de temps mitjançant time.mktime() i després formata la marca de temps en una representació de cadena utilitzant el format %b%d%Y%r que s'ha subministrat.

Python 3




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)))>

precedencia de l'operador java
>

>

Sortida:

Dec 04 2018 04:37:00 AM>

Complexitat temporal: O(1)
Espai auxiliar: O(1)

Aprèn més: Com formatar la data amb strftime() a Python

2. Converteix Datetime en String utilitzant Datetime

Porta el mòdul datetime a convertir datetime en cadena utilitzant la data i l'hora especificades i creeu un objecte datetime. Creeu una cadena de format que descrigui els requisits de format per a l'objecte datetime.

Per crear una cadena en el format desitjat, utilitzeu el mètode strftime() de l'objecte DateTime. La cadena de format és l'argument de la funció strftime().

Exemple: El programa importa el mòdul datetime, que dóna als programadors de Python accés a classes per treballar amb dates i hores. Els valors de data i hora proporcionats, 14 de març de 2022, a les 15:30:00, s'utilitzen per generar un objecte de data i hora. L'objecte datetime es transforma en una representació de cadena basada en la cadena de format mitjançant el mètode strftime().

Python 3




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))>

>

>

Sortida:

2022-03-14 15:30:00>

Complexitat temporal: O(1)
Espai auxiliar: O(1)

En aquest article, hem tractat els mètodes per convertir la cadena a datetime i viceversa. Convertir datetime en cadenes o viceversa pot ser molt útil i convenient a la programació. Podeu utilitzar aquests mètodes per convertir datetime en cadenes o viceversa.

Llegeix també: