logo

Preveďte reťazec na DateTime a naopak v Pythone

Bežnou nevyhnutnosťou v mnohých programovacích aplikáciách je práca s dátumami a časmi. Python má silné nástroje a balíky, ktoré zjednodušujú spracovanie konverzií dátumu a času. Tento článok preskúma, ako efektívne manipulovať a formátovať hodnoty dátumu a času Python konvertovaním Reťazce na dátum a čas predmety a chrbát. Článok rozdelíme na dve časti:

  • Python konvertuje reťazec na dátum a čas
  • Python Konvertuje dátum a čas na reťazec

Ako previesť reťazec na dátum a čas?

V Pythone môžu používatelia niekedy zadať dátum ako reťazec, kvôli čomu s ním nemôžeme vykonávať operácie dátum-čas. Operácie ako časový rozdiel, porovnanie dátumov, práca s časovými pásmami atď. nie je možné vykonávať s reťazcovými dátumami.



maven nainštalovať

Pozrime sa na proces prevodu reťazcov na dátumy dvoma metódami.

  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. Preveďte reťazec na Datetime pomocou Datetime.Strptime()

The Strptime() je k dispozícii v Dátum Čas modul a používa sa na konverziu dátumu a času. Táto funkcia mení dané reťazec Datetime do požadovaného formátu.

Príklad: Program definuje funkciu, ktorá konvertuje dátum a čas reprezentovaný ako a reťazec na dátum a čas objekt pomocou požadovaného formátu. Konverzia sa vykonáva pomocou metódy 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)))>

>

>

Výkon:

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

2. Preveďte reťazec na dátum a čas pomocou Modul Dateutil

The Dateutil je modul tretej strany. Modul Dateutil podporuje analýzu dátumov v akomkoľvek formáte reťazca. Tento modul poskytuje interné fakty o aktuálnych svetových časových pásmach. Parse() dokáže previesť reťazec Pythonu do formátu dátumu a času. Jediným použitým parametrom je reťazec.

Príklad: Program importuje modul parser knižnice dateutil na konverziu reťazec na dátum a čas ktorý má funkciu na analýzu reťazcov dátumu a času. Funkcia Parser.parse() automaticky rozpozná formát, ktorý transformuje reťazec 23. júna 2022 19:31 na objekt DateTime.

Python3




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

>

>

Výkon:

2022-06-23 19:31:00>

Čítaj viac: Vytvorte Python Datetime z reťazca

Ako previesť dátum a čas na reťazec?

Môžete tiež previesť DateTime na reťazec na rôzne účely, ako je vytváranie prehľadov, vlastné formátovanie alebo formátovanie na zobrazenie. Pozrime sa na rôzne spôsoby prevodu dátumu a času na reťazec.

  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. Preveďte dátum a čas na reťazec u sing Time.strftime()

Python strftime() funkcia je prítomná v Dátum Čas modul na vytvorenie reťazcovej reprezentácie na základe zadaného formátovacieho reťazca. Túto metódu používame na konverziu dátum a čas na reťazec v Pythone.

Ďalšia podobná funkcia je dostupná v časovom module Pythonu, ktorý konvertuje objekt n-tice alebo struct_time na reťazec, ako je špecifikované v argumente format.

Príklad: Program konvertuje Dátum a čas do reťazca a importuje časový modul Pythonu, ktorý ponúka funkcie na spracovanie činností súvisiacich s časom. Funkcia convert() berie ako vstup n-ticu datetime_str, transformuje ju na časovú značku pomocou time.mktime() a potom naformátuje časovú značku do reťazcovej reprezentácie pomocou dodaného formátu %b%d%Y%r.

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

>

>

Výkon:

Dec 04 2018 04:37:00 AM>

Časová zložitosť: O(1)
Pomocný priestor: O(1)

Uč sa viac: Ako formátovať dátum pomocou strftime() v Pythone

string.compare c#

2. Preveďte dátum a čas na reťazec pomocou Datetime

Preneste modul dátumu a času do previesť dátum a čas na reťazec pomocou zadaného dátumu a času a vytvorte objekt datetime. Vytvorte formátovací reťazec, ktorý načrtáva požiadavky na formátovanie pre objekt datetime.

Ak chcete vytvoriť reťazec v požadovanom formáte, použite metódu strftime() objektu DateTime. Formátovací reťazec je argumentom funkcie strftime().

Príklad: Program importuje modul datetime, ktorý dáva programátorom Pythonu prístup k triedam na prácu s dátumami a časmi. Zadané hodnoty dátumu a času, 14. marca 2022, o 15:30:00, sa použijú na vygenerovanie objektu dátumu a času. Objekt datetime sa transformuje na reťazcovú reprezentáciu založenú na formátovacom reťazci pomocou metódy 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))>

>

>

Výkon:

2022-03-14 15:30:00>

Časová zložitosť: O(1)
Pomocný priestor: O(1)

V tomto článku sme sa zaoberali metódami prevodu reťazca na dátum a čas a naopak. Konverzia dátumu a času na reťazce alebo naopak môže byť pri programovaní veľmi užitočná a pohodlná. Tieto metódy môžete použiť na konverziu dátumu a času na reťazce alebo naopak.

Prečítajte si tiež: