Rad sa datumima je uobičajen zadatak u svakom programskom ekosistemu. Bilo da bilježite događaje ili izvodite analize usmjerene na vrijeme, postoji velika vjerovatnoća da ćete naići na potrebu da obrađujete i formatirate datume u Pythonu. Formatator datuma je izuzetno koristan alat za takve zadatke, jer pruža jednostavan način za pretvaranje objekata datuma i vremena u različite nizove reprezentacija, čime se pruža fleksibilnost u načinu na koji se datumi mogu prikazati ili koristiti.
Primarna biblioteka uključena u formatiranje datuma u Pythonu je datetime. Ova biblioteka je dio Python-ovog standardnog skupa ponuda, što znači da se može koristiti bez potrebe za instaliranjem biblioteka trećih strana prije nego što se može uvesti i koristiti. Sa ovom bibliotekom rukovanje datumima, vremenima, datumima, vremenskim deltama i drugim stvarima je jednostavno.
Proces formatiranja datuma pomoću Pythonove biblioteke datuma i vremena može se podijeliti u tri osnovna koraka: (1) uvoz biblioteke, (2) kreiranje objekta datuma i (3) primjena željenog formata stringa na objekt datuma.
Primjer koda
U nastavku je primjer ovog procesa na djelu. U ovom primjeru, kreirat ćemo objekt datuma i vremena koji predstavlja trenutni datum i vrijeme, a zatim ga formatirati u string reprezentaciju:
import datetime # step 1: import library now = datetime.datetime.now() # step 2: create date object formatted_now = now.strftime("%Y-%m-%d %H:%M:%S") # step 3: format date print(formatted_now) # will print out the date in the following format: "YYYY-MM-DD HH:MM:SS"
U ovom primjeru, objekt datuma i vremena 'sada' je formatiran pomoću strftime metod, koji pretvara datetime objekat u format stringa. Format koji je dat metodi strftime određuje kako je rezultujući niz formatiran: “%Y-%m-%d %H:%M:%S” diktira da godina treba biti predstavljena kao četverocifreni broj, nakon čega slijedi mjesec i dan kao dvocifreni brojevi, a sati, minute i sekunde također kao dvocifreni brojevi.
Razumijevanje strftime
Metoda strftime je skraćenica od “string format time”. To je metoda koju obezbjeđuju objekti datuma, datuma i vremena i prihvata string formata kao svoj parametar. Ovaj niz formata sadrži "kodove formata", koji su posebne direktive koje se pretvaraju u određene komponente datuma ili vremena.
Evo nekoliko često korištenih kodova strftime formata:
- %Y: Četvorocifrena godina
- %m: Dvocifreni mjesec
- %d: Dvocifreni dan
- %H: Dvocifreni sat (24-satni format)
- %M: Dvocifrene minute
- %S: Dvocifrene sekunde
Dodatne biblioteke formatiranja datuma
Dok je biblioteka datuma i vremena dio standardne ponude Pythona, dostupne su i druge biblioteke koje nude dodatne funkcije za rad s datumima. Neki od njih uključuju:
- dateutil: Dodatak modulu datuma i vremena, dodajući neke zgodne funkcije
- pytz: Sveobuhvatna podrška za vremensku zonu
- Strelica: “Datumi i vrijeme su laki”, pokušava pojednostaviti i poboljšati manipulaciju i formatiranje datuma
Ukratko, formatiranje datuma je ključan zadatak u mnogim Python projektima, i onaj koji je relativno jednostavan pomoću Python-ovog bogatog skupa alata za rukovanje datumima i formatiranje. Razumijevanjem kako koristiti ove alate, možemo znatno olakšati svoj život kada su u pitanju zadaci koji uključuju datume i vrijeme.