Una necessità comune in molte applicazioni di programmazione è gestire date e orari. Python dispone di strumenti e pacchetti efficaci che semplificano la gestione delle conversioni di data e ora. Questo articolo esaminerà come manipolare e formattare in modo efficace i valori di data e ora in Pitone convertendo Stringhe in Datetime oggetti e ritorno. Tratteremo l’articolo in due parti:
- Python Converti la stringa in DateTime
- Python Converti Datetime in Stringa
Come convertire la stringa in DateTime?
In Python, gli utenti a volte possono inserire una data come stringa a causa della quale non è possibile eseguire operazioni data-ora su di essa. Operazioni come la differenza oraria, il confronto delle date, l'utilizzo dei fusi orari, ecc. non possono essere eseguite su date stringa.
come aprire un file json
Vediamo il processo di conversione delle stringhe in date con due metodi.
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. Converti String in Datetime utilizzando Datetime.Srptime()
IL Tempo di esecuzione() è disponibile in appuntamento modulo e viene utilizzato per la conversione data-ora. Questa funzione modifica il dato stringa di Datetime nel formato desiderato.
Esempio: Il programma definisce una funzione che converte la data e l'ora rappresentate come a stringa in una data/ora oggetto utilizzando il formato desiderato. La conversione viene eseguita utilizzando il metodo 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)))> |
>
>
Produzione:
2018-12-04 10:07:00 )>
2. Converti stringa in Datetime utilizzando Modulo Dateutil
IL Dateutil è un modulo di terze parti. Il modulo Dateutil supporta l'analisi delle date in qualsiasi formato di stringa. Questo modulo fornisce fatti interni sugli attuali fusi orari mondiali. Analizza() può convertire una stringa Python nel formato data-ora. L'unico parametro utilizzato è la stringa.
Esempio: Il programma importa il modulo parser della libreria dateutil per la conversione stringa in datetime che ha una funzione per analizzare le stringhe di data e ora. La funzione Parser.parse() riconosce automaticamente il formato, trasformando la stringa Jun 23 2022 07:31 PM in un oggetto DateTime.
Python3
from> dateutil> import> parser> > DT> => parser.parse(> 'Jun 23 2022 07:31PM'> )> > print> (DT)> print> (> type> (DT))> |
>
>
Produzione:
2022-06-23 19:31:00>
Per saperne di più: Crea Python Datetime dalla stringa
Come convertire Datetime in stringa?
Puoi anche convertire un DateTime in una stringa per vari scopi come reporting, formattazione personalizzata o formattazione per la visualizzazione. Vediamo vari metodi per convertire datetime in stringa.
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. Converti Datetime in String u canta Time.strftime()
Pitone strftime() la funzione è presente in appuntamento modulo per creare una rappresentazione di stringa basata sulla stringa di formato specificata. Stiamo utilizzando questo metodo per convertire datetime su stringa in Pitone.
Un'altra funzione simile è disponibile nel modulo time di Python che converte un oggetto tupla o struct_time in una stringa come specificato dall'argomento format.
Esempio: Il programma converte Datetime su stringa e importa il modulo temporale Python, che offre funzioni per la gestione delle attività legate al tempo. La funzione convert() accetta una tupla datetime_str come input, la trasforma in un timestamp utilizzando time.mktime(), quindi formatta il timestamp in una rappresentazione di stringa utilizzando il formato %b%d%Y%r fornito.
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)))> |
>
>
Produzione:
Dec 04 2018 04:37:00 AM>
Complessità temporale: O(1)
Spazio ausiliario: O(1)
Saperne di più: Come formattare la data usando strftime() in Python
2. Converti Datetime in stringa utilizzando Datetime
Porta il modulo datetime a convertire datetime in stringa utilizzando la data e l'ora specificate e creare un oggetto datetime. Creare una stringa di formato che delinei i requisiti di formattazione per l'oggetto datetime.
Per creare una stringa nel formato desiderato, utilizzare il metodo strftime() dell'oggetto DateTime. La stringa di formato è l'argomento per la funzione strftime().
Esempio: Il programma importa il modulo datetime, che fornisce ai programmatori Python l'accesso alle classi per lavorare con date e ore. I valori di data e ora forniti, 14 marzo 2022, alle 15:30:00, vengono utilizzati per generare un oggetto datetime. L'oggetto datetime viene trasformato in una rappresentazione di stringa basata sulla stringa di formato utilizzando il metodo strftime().
Python3
Java Ciao mondo esempio
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))> |
>
>
Produzione:
2022-03-14 15:30:00>
Complessità temporale: O(1)
Spazio ausiliario: O(1)
In questo articolo, abbiamo trattato i metodi per convertire una stringa in datetime e viceversa. Convertire datetime in stringhe o viceversa può essere molto utile e conveniente nella programmazione. È possibile utilizzare questi metodi per convertire datetime in stringhe o viceversa.
Leggi anche:
- Conversione della stringa 'aaaa-mm-gg' in DateTime in Python
- Come convertire datetime in data in Python