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ž: