En vanlig nödvändighet i många programmeringsapplikationer är att hantera datum och tider. Python har starka verktyg och paket som förenklar hanteringen av datum- och tidskonverteringar. Den här artikeln kommer att undersöka hur man effektivt manipulerar och formaterar datum- och tidsvärden i Pytonorm genom att konvertera Strängar till Datetime föremål och baksida. Vi kommer att täcka artikeln i två delar:
- Python Konvertera sträng till DateTime
- Python Konvertera Datetime till String
Hur konverterar man sträng till DateTime?
I Python kan användare ibland ange ett datum som en sträng på grund av att vi inte kan utföra datum-tid-operationer på det. Operationer som tidsskillnad, datumjämförelse, arbete med tidszoner etc. kan inte utföras på strängdatum.
skillnad på datum i excel
Låt oss se processen att konvertera strängar till datum med två metoder.
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. Konvertera sträng till Datetime med Datetime.Strptime()
De Strptime() finns i datum Tid modul och används för datum-tid-konvertering. Denna funktion ändrar det givna sträng av Datetime till önskat format.
Exempel: Programmet definierar en funktion som konverterar datum och tid som representeras som en sträng till ett datum och tid objekt med önskat format. Konverteringen utförs med metoden 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)))> |
>
>
Produktion:
2018-12-04 10:07:00 )>
2. Konvertera sträng till datumtid med Dateutil-modul
De Dateutil är en tredjepartsmodul. Dateutil-modulen stöder analys av datum i valfritt strängformat. Interna fakta om aktuella tidszoner i världen tillhandahålls av denna modul. Parse() kan konvertera en Python-sträng till datum-tid-format. Den enda parameter som används är strängen.
Exempel: Programmet importerar dateutil-bibliotekets parsermodul för konvertering sträng till datumtid som har en funktion för att analysera datum- och tidssträngar. Funktionen Parser.parse() känner igen formatet automatiskt, vilket omvandlar strängen 23 juni 2022 19:31 till ett DateTime-objekt.
Python3
from> dateutil>import> parser> > DT>=> parser.parse(>'Jun 23 2022 07:31PM'>)> > print>(DT)> print>(>type>(DT))> |
>
>
Produktion:
2022-06-23 19:31:00>
Läs mer: Skapa Python Datetime från sträng
Hur konverterar man Datetime till String?
Du kan också konvertera en DateTime till en sträng för olika ändamål som rapportering, anpassad formatering eller formatering för visning. Låt oss se olika metoder för att konvertera datetime till sträng.
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. Konvertera Datetime till String u sjung Time.strftime()
Pytonorm strftime() funktion finns i datum Tid modul för att skapa en strängrepresentation baserat på den angivna formatsträngen. Vi använder den här metoden för att konvertera datetime till sträng i Python.
En annan liknande funktion är tillgänglig i Python-tidsmodulen som konverterar ett tupel- eller struct_time-objekt till en sträng som specificeras av formatargumentet.
Exempel: Programmet konverterar Datetime to String och importerar Python-tidsmodulen, som erbjuder funktioner för att hantera tidsrelaterade aktiviteter. Funktionen convert() tar en tuple datetime_str som indata, omvandlar den till en tidsstämpel med time.mktime(), och formaterar sedan tidsstämpeln till en strängrepresentation med formatet %b%d%Y%r som angavs.
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)))> |
>
>
Produktion:
objektiv java
Dec 04 2018 04:37:00 AM>
Tidskomplexitet: O(1)
Hjälputrymme: O(1)
Läs mer: Hur man formaterar datum med strftime() i Python
2. Konvertera Datetime till String använder Datetime
Ta med datetime-modulen till konvertera datetime till String använda det angivna datumet och tiden och skapa ett datetime-objekt. Skapa en formatsträng som beskriver formateringskraven för datetime-objektet.
För att skapa en sträng i önskat format, använd DateTime-objektets strftime()-metod. Formatsträngen är argumentet för strftime()-funktionen.
Exempel: Programmet importerar datetime-modulen, vilket ger Python-programmerare tillgång till klasser för att arbeta med datum och tider. De angivna datum- och tidsvärdena, 14 mars 2022, kl. 15:30:00, används för att generera ett datetime-objekt. Datetime-objektet omvandlas till en strängrepresentation baserat på formatsträngen med metoden 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))> |
>
>
Produktion:
2022-03-14 15:30:00>
Tidskomplexitet: O(1)
Hjälputrymme: O(1)
I den här artikeln har vi täckt metoderna för att konvertera sträng till datumtid och vice versa. Att konvertera datetime till strängar eller vice versa kan vara mycket användbart och bekvämt i programmering. Du kan använda dessa metoder för att konvertera datetime till strängar eller vice versa.
Läs också:
- Konverterar strängen 'åååå-mm-dd' till DateTime i Python
- Hur man konverterar datetime till datum i Python