Python Datum i vrijeme, vrijemeDelta, Strftime(Format) s primjerima
โก Pametni saลพetak
Python datetime, along with the date, time, and timedelta classes, handles dates, times, and intervals as objects. The datetime module formats output with strftime(), parses strings, and calculates future or past moments using timedelta arithmetic.

In Python, datum, vrijeme i datumvrijeme classes provide a number of functions to deal with dates, times and time intervals. Date and datetime in Python are objects, so when you manipulate them, you are actually manipulating objects and not strings or timestamps. Whenever you manipulate dates or time, you need to import the datetime module.
Datum i vrijeme ulazi u Python are categorized into 5 main classes.
- datum โ manipulirajte samo datumom (mjesec, dan, godina)
- vrijeme โ vrijeme neovisno o danu (sat, minuta, sekunda, mikrosekunda)
- datetime โ kombinacija vremena i datuma (mjesec, dan, godina, sat, sekunda, mikrosekunda)
- timedeltaโ trajanje vremena koje se koristi za manipuliranje datumima
- tzinfoโ Abstract klasa za rad s vremenskim zonama
Kako koristiti klasu datuma i vremena
Korak 1) Prije pokretanja koda za format datuma i vremena u Python, vaลพno je da uvezete Python module datuma i vremena kao ลกto je prikazano na slici ispod.
Ovi uvozni iskazi unaprijed su definirani dijelovi funkcionalnosti u Python library that let you manipulate dates and times, without writing any code.
Razmotrite sljedeฤe toฤke prije izvoฤenja Python kod formata datuma i vremena
from datetime import date
Ovaj redak govori o Python tumaฤ za uvoz klase datuma iz modula datetime Python. We are not writing the code for this date functionality but are simply importing it for our use.
Ispiลกi datum pomoฤu date.today()
The date.today() function has several properties associated with it. We can print the individual day/month/year and many other things.
Pogledajmo primjer
Danaลกnji broj za radni dan
The date.today() function also gives you the weekday number. Here is the Weekday Table which starts with Monday as 0 and Sunday as 6.
| Dan | Broj dana u tjednu |
|---|---|
| Monday | 0 |
| Utorak | 1 |
| Srijeda | 2 |
| ฤetvrtak | 3 |
| Petak | 4 |
| Subota | 5 |
| nedjelja | 6 |
Broj dana u tjednu koristan je za nizove ฤiji indeks ovisi o danu u tjednu.
Korak 2) Zatim stvaramo instancu objekta datuma.
Korak 3) Zatim ispisujemo datum i pokreฤemo kod.
The output is as expected.
Python Trenutaฤni datum i vrijeme: sada() danas()
Korak 1) Kao objekti datuma, takoฤer moลพemo koristiti โOBJEKTI DATUM-VRIJEMEโ in Python. Python objekti datuma i vremena daju datum zajedno s vremenom sati, minute, sekunde i milisekunde.
Kada izvrลกimo kod za datum i vrijeme, on daje izlaz s trenutnim datumom i vremenom.
Korak 2) With โDATETIME OBJECTโ, you can also call the time class. Suppose we want to print just the current time without the date.
t = datetime.time(datetime.now())
- Uvezli smo vremensku klasu. Dodijelit ฤemo mu trenutnu vrijednost vremena koristeฤi datetime.now()
- Varijabli t pridruลพujemo vrijednost trenutnog vremena.
A ovo ฤe mi dati dovoljno vremena. Pa pokrenimo ovaj program.
Okay, so you can see that here I got the date and time. And then the next line, Iโve got just the time by itself.
Korak 3) We will apply our weekday indexer to our weekdayโs array list to know which day is today.
- Weekdays operator (wd) is assigned the number from (0-6) depending on what the current weekday is. Here we declared the array of the list for days (Mon, Tue, WedโฆSun).
- Koristite tu vrijednost indeksa da znate koji je dan. U naลกem sluฤaju, to je #2 i predstavlja srijedu, tako da ฤe u izlazu ispisati "Koja je srijeda."
Ovdje je kompletan kod za dobivanje trenutnog datuma i vremena koristeฤi datetime sada
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print (today) # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd=date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print("Today is day number %d" % wd) print("which is a " + days[wd]) if __name__== "__main__": main()
Kako formatirati izlaz datuma i vremena pomoฤu Strftime()
So far, we have learned how to use datetime and date objekt u Python. Napravit ฤemo korak dalje i nauฤiti kako koristiti funkciju oblikovanja za formatiranje vremena i datuma.
Korak 1) Prvo ฤemo vidjeti jednostavan korak kako formatirati godinu. Bolje je razumjeti na primjeru.
- Koristili smo โstrftime functionโ za oblikovanje.
- Ova funkcija koristi razliฤite kontrolni kod dati izlaz.
- Each control code resembles different parameters like year, month, weekday and date [(%y/%Y โ godina), (%a/%A- radni dan), (%b/%B- mjesec), (%d โ dan u mjesecu)] .
- U naลกem sluฤaju jest ("%Y") koji nalikuje godini, ispisuje punu godinu sa stoljeฤem (npr. 2018.).
Korak 2) Sada ako zamijenite (โ%Yโ) malim slovima, tj. ( โ%y) i izvrลกite kod, izlaz ฤe prikazati samo (18), a ne (2018). Stoljeฤe u godini neฤe se prikazati kao ลกto je prikazano na slici ispod
Korak 3) Strf function can declare the date, day, month and year separately. Also with small changes in the control code in strftime function you can format the style of the text.
Inside the strftime function if you replace (%a) with capital A, i.e., (%A) the output will print out as โFridayโ instead of just an abbreviation โFriโ.
Korak 4) Uz pomoฤ funkcije โStrftimeโ takoฤer moลพemo dohvatiti lokalno vrijeme sustava, datum ili oboje.
- %C- oznaฤava lokalni datum i vrijeme
- %x- oznaฤava lokalni datum
- %X- oznaฤava lokalno vrijeme
U izlazu moลพete vidjeti oฤekivani rezultat
Korak 5) Funkcija "strftime" omoguฤuje vam da pozovete vrijeme u bilo kojem formatu 24 sata ili 12 sati.
Samo definiranjem kontrolnog koda kao ลกto je %I/H za sat, % M za minutu, %S za sekundu, moลพe se pozvati vrijeme za razliฤite formate
12 sati vrijeme je deklarirano [print now.strftime(โ%I:%M:%S %p) ]
24 sati vrijeme je deklarirano [print now.strftime(โ%H:%Mโ)]
Ovdje je potpuni kod za pretvaranje datuma i vremena u String objekt.
# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print(now.strftime("%c")) print(now.strftime("%x")) print(now.strftime("%X")) ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print(now.strftime("%I:%M:%S %p")) # 12-Hour:Minute:Second:AM print(now.strftime("%H:%M")) # 24-Hour:Minute if __name__== "__main__": main()
U ฤemu je Timedelta Python?
Timedelta in Python je objekt koji predstavlja trajanje. Uglavnom se koristi za izraฤunavanje trajanja izmeฤu dva datuma i vremena. Takoฤer se koristi za dohvaฤanje objekta s nekim delta datumom i vremenom. Objekt timedelta podrลพava matematiฤke operacije poput zbrajanja, podraฤunavanjatraccije, mnoลพenje, dijeljenje itd.
Kako koristiti Timedelta objekte
Kontakt Python timedelta objekata, moลพete procijeniti vrijeme i za buduฤnost i za proลกlost. Drugim rijeฤima, to je vremenski raspon za predviฤanje bilo kojeg posebnog dana, datuma ili vremena.
Imajte na umu da ova funkcija nije za ispis vremena ili datuma, veฤ za neลกto za IZRAฤUNANJE buduฤnosti ili proลกlosti. Letโs see a Python timedelta primjer za bolje razumijevanje.
Korak 1) Da biste pokrenuli Timedelta Objects, morate prvo deklarirati import naredbu, a zatim izvrลกiti kod
- Napiลกite izjavu uvoza za timedelta
- Sada napiลกite kod za ispis objekta iz vremenske delte kao ลกto je prikazano na snimci zaslona
- Pokrenite kod. Timedelta predstavlja raspon od 365 dana, 8 sati i 15 minuta i ispisuje isto
Zbunjujuฤe? Sljedeฤi korak ฤe pomoฤi -
Korak 2) Uzmimo danaลกnji datum i vrijeme da provjerimo funkcionira li naลกa izjava o uvozu dobro. Kada se kรดd izvrลกi, on ispisuje danaลกnji datum ลกto znaฤi da naลกa izjava o uvozu radi dobro
Korak 3) Vidjet ฤemo kako moลพemo dohvatiti datum za godinu dana kroz delta objekte. Kada pokrenemo kod, on daje oฤekivani izlaz.
Korak 4) Joลก jedan primjer kako se delta vremena moลพe koristiti za izraฤunavanje buduฤeg datuma iz trenutnog datuma i vremena
Korak 5) Pogledajmo sloลพeniji primjer. ลฝelio bih odrediti koliko dana je proลกlo od Nove godine. Evo kako ฤemo nastaviti
- Koriลกtenjem today= date.today() dobit ฤemo danaลกnji datum
- Znamo da je nova godina uvijek 1. sijeฤnja, ali godina bi mogla biti drugaฤija. Koristeฤi nyd= date(today.year,1,1) spremamo novu godinu u varijablu nyd
- if nyd < today: compares whether the current date is greater than the new year. If yes, it enters the while loop
- ((today-nyd).days) daje razliku izmeฤu trenutnog datuma i nove godine u DANIMA
Rezultat pokazuje da je "Nova godina veฤ proลกla prije 11 dana."
Ovdje je kompletan radni kod
# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print (timedelta(days=365, hours=8, minutes=15)) # print today's date print ("today is: " + str(datetime.now())) # print today's date one year from now print ("one year from now it will be:" + str(datetime.now() + timedelta(days=365))) # create a timedelta that uses more than one argument # print (in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4))) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nyd < today: print ("New Year day is already went by %d days ago" % ((today - nyd).days))
Python 2 Primjer
The following examples show the same date and time operations written for Python 2, where print is a statement rather than a function. Use these versions only when maintaining legacy Python 2 code.
from datetime import date from datetime import time from datetime import datetime def main(): ##DATETIME OBJECTS #Get today's date from datetime class today=datetime.now() #print today # Get the current time #t = datetime.time(datetime.now()) #print "The current time is", t #weekday returns 0 (monday) through 6 (sunday) wd = date.weekday(today) #Days start at 0 for monday days= ["monday","tuesday","wednesday","thursday","friday","saturday","sunday"] print "Today is day number %d" % wd print "which is a " + days[wd] if __name__== "__main__": main()
# #Example file for formatting time and date output # from datetime import datetime def main(): #Times and dates can be formatted using a set of predefined string #Control codes now= datetime.now() #get the current date and time #%c - local date and time, %x-local's date, %X- local's time print now.strftime("%c") print now.strftime("%x") print now.strftime("%X") ##### Time Formatting #### #%I/%H - 12/24 Hour, %M - minute, %S - second, %p - local's AM/PM print now.strftime("%I:%M:%S %p") # 12-Hour:Minute:Second:AM print now.strftime("%H:%M") # 24-Hour:Minute if __name__== "__main__": main()
# # Example file for working with timedelta objects # from datetime import date from datetime import time from datetime import datetime from datetime import timedelta # construct a basic timedelta and print it print timedelta(days=365, hours=8, minutes=15) # print today's date print "today is: " + str(datetime.now()) # print today's date one year from now print "one year from now it will be:" + str(datetime.now() + timedelta(days=365)) # create a timedelta that uses more than one argument # print "in one week and 4 days it will be " + str(datetime.now() + timedelta(weeks=1, days=4)) # How many days until New Year's Day? today = date.today() # get todays date nyd = date(today.year, 1, 1) # get New Year Day for the same year # use date comparison to see if New Year Day has already gone for this year # if it has, use the replace() function to get the date for next year if nyd < today: print "New Year day is already went by %d days ago" % ((today - nyd).days)



















