Een algemene noodzaak in veel programmeertoepassingen is het omgaan met datums en tijden. Python heeft krachtige tools en pakketten die het verwerken van datum- en tijdconversies vereenvoudigen. In dit artikel wordt onderzocht hoe u datum- en tijdwaarden effectief kunt manipuleren en opmaken Python door te converteren Tekenreeksen voor Datetime voorwerpen en terug. We zullen het artikel in twee delen behandelen:
- Python Converteer tekenreeks naar DateTime
- Python converteert datumtijd naar tekenreeks
Hoe tekenreeks naar DateTime converteren?
In Python kunnen gebruikers soms een datum als string invoeren, waardoor we er geen datum-tijdbewerkingen op kunnen uitvoeren. Bewerkingen zoals tijdsverschil, datumvergelijking, werken met tijdzones, etc. kunnen niet worden uitgevoerd op stringdatums.
'kruskal's algoritme'
Laten we eens kijken naar het proces van het converteren van tekenreeksen naar datums met twee methoden.
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. Converteer String naar Datetime met Datetime.Strptime()
De Strptijd() is verkrijgbaar in de datum Tijd module en wordt gebruikt voor datum-tijdconversie. Deze functie verandert het gegeven reeks Datetime in het gewenste formaat.
Voorbeeld: Het programma definieert een functie die de datum en tijd converteert, weergegeven als a string naar een datetime object met het gewenste formaat. De conversie wordt uitgevoerd met behulp van de datetime.strptime() methode.
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)))> |
>
>
Uitgang:
2018-12-04 10:07:00 )>
2. Converteer String naar Datetime met behulp van Dateutil-module
De Datumutil is een module van derden. De Dateutil-module ondersteunt het parseren van datums in elk tekenreeksformaat. Interne feiten over de huidige wereldtijdzones worden door deze module verstrekt. Parseren() kan een Python-string converteren naar datum-tijdformaat. De enige gebruikte parameter is de string.
Voorbeeld: Het programma importeert de parsermodule van de dateutil-bibliotheek voor conversie tekenreeks naar datetime die een functie heeft voor het parseren van datum- en tijdreeksen. De functie Parser.parse() herkent het formaat automatisch, waardoor de string 23 juni 2022 19:31 uur wordt omgezet in een DateTime-object.
Python3
from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))> |
>
>
Uitgang:
2022-06-23 19:31:00>
Lees verder: Maak Python Datetime op basis van een tekenreeks
Hoe Datetime naar String te converteren?
U kunt een DateTime ook converteren naar een tekenreeks voor verschillende doeleinden, zoals rapportage, aangepaste opmaak of opmaak voor weergave. Laten we verschillende methoden bekijken om datetime naar string te converteren.
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. Converteer Datetime naar String u zing Time.strftime()
Python strftijd() functie aanwezig is datum Tijd module om een tekenreeksrepresentatie te maken op basis van de opgegeven indelingsreeks. We gebruiken deze methode om te converteren datetime naar tekenreeks in Python.
Een andere soortgelijke functie is beschikbaar in de Python-tijdmodule, die een tuple- of struct_time-object converteert naar een string zoals gespecificeerd door het format-argument.
Voorbeeld: Het programma bekeerlingen Datumtijd naar tekenreeks en importeert de Python-tijdmodule, die functies biedt voor het afhandelen van tijdgerelateerde activiteiten. De functie convert() neemt een tupel datetime_str als invoer, transformeert deze naar een tijdstempel met behulp van time.mktime(), en formatteert de tijdstempel vervolgens in een tekenreeksrepresentatie met behulp van de indeling %b%d%Y%r die is opgegeven.
Python3
callback-hel in javascript
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)))> |
>
>
Uitgang:
Dec 04 2018 04:37:00 AM>
Tijdcomplexiteit: O(1)
Hulpruimte: O(1)
Kom meer te weten: Datum opmaken met strftime() in Python
2. Converteer Datetime naar String met behulp van Datetime
Breng de datetime-module naar converteer datetime naar String met behulp van de opgegeven datum en tijd, en maak een datetime-object. Maak een opmaaktekenreeks die de opmaakvereisten voor het datetime-object schetst.
Als u een tekenreeks in de gewenste indeling wilt maken, gebruikt u de strftime()-methode van het DateTime-object. De formatstring is het argument voor de functie strftime().
Voorbeeld: Het programma importeert de datetime-module, die Python-programmeurs toegang geeft tot klassen voor het werken met datums en tijden. De opgegeven datum- en tijdwaarden, 14 maart 2022, om 15:30:00 uur, worden gebruikt om een datetime-object te genereren. Het datetime-object wordt getransformeerd in een tekenreeksrepresentatie op basis van de notatietekenreeks met behulp van de strftime()-methode.
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))> |
>
>
Uitgang:
2022-03-14 15:30:00>
Tijdcomplexiteit: O(1)
Hulpruimte: O(1)
In dit artikel hebben we de methoden besproken om tekenreeksen naar datetime te converteren en omgekeerd. Het converteren van datetime naar strings of omgekeerd kan erg handig en handig zijn bij het programmeren. U kunt deze methoden gebruiken om datetime naar tekenreeksen te converteren of omgekeerd.
Lees ook:
- Tekenreeks ‘jjjj-mm-dd’ converteren naar DateTime in Python
- Hoe datetime naar datum te converteren in Python