Python Kuupäev, kellaaegDelta, Strftime(Format) koos näidetega
⚡ Nutikas kokkuvõte
Python datetime moodul koos klassidega date, time ja timedelta käsitleb kuupäevi, kellaaegu ja intervalle objektidena. Datetime moodul vormindab väljundi funktsiooniga strftime(), parsib stringe ja arvutab tulevasi või mineviku hetki timedelta aritmeetika abil.
In Python, kuupäev, kellaaeg ja kellaaeg klassid pakuvad mitmeid funktsioone kuupäevade, kellaaegade ja ajavahemikega tegelemiseks. Kuupäev ja kuupäev/kellaaeg Python on objektid, seega nendega manipuleerides manipuleerite tegelikult objektidega, mitte stringide või ajatemplitega. Kuupäevade või kellaaja manipuleerimisel peate importima datetime mooduli.
Kuupäevatunnid sisse Python jagunevad 5 põhiklassi.
- kuupäev – lihtsalt kuupäevaga manipuleerimine (kuu, päev, aasta)
- aeg – päevast sõltumatu aeg (tund, minut, sekund, mikrosekund)
- datetime – kellaaja ja kuupäeva kombinatsioon (kuu, päev, aasta, tund, sekund, mikrosekund)
- timedelta – ajavahemik, mida kasutatakse kuupäevade muutmiseks
- tzinfo— kõhulihasedtract-klass ajavöönditega toimetulekuks
Kuupäeva ja kuupäeva ja kellaaja klassi kasutamine
Samm 1) Enne kuupäeva ja kellaaja vormingu koodi käivitamist Python, on oluline importida Python kuupäeva ja kellaaja moodulid, nagu on näidatud alloleval ekraanipildil.
Need impordiavaldused on rakenduses eelnevalt määratletud funktsioonid Python teek, mis võimaldab teil kuupäevade ja kellaaegadega manipuleerida ilma koodi kirjutamata.
Enne toimingu sooritamist kaaluge järgmisi punkte Python kuupäeva ja kellaaja vormingu kood
from datetime import date
See rida ütleb Python tõlk kuupäevaklassi importimiseks datetime moodulist PythonMe ei kirjuta selle kuupäevafunktsiooni koodi, vaid lihtsalt impordime selle enda tarbeks.
Prindi kuupäev kasutades date.today()
Funktsioonil date.today() on mitu omadust. Saame printida üksiku päeva/kuu/aasta ja palju muud.
Vaatame näite
Tänane tööpäeva number
Funktsioon date.today() annab sulle ka nädalapäeva numbri. Siin on nädalapäevade tabel, mis algab numbriga Monday kui 0 ja pühapäeval kui 6.
| päev | Nädalapäeva number |
|---|---|
| Monday | 0 |
| Teisipäev | 1 |
| Kolmapäev | 2 |
| Neljapäev | 3 |
| Reede | 4 |
| Laupäev | 5 |
| Pühapäev | 6 |
Nädalapäeva number on kasulik massiivide jaoks, mille indeks sõltub nädalapäevast.
Samm 2) Järgmiseks loome kuupäevaobjekti eksemplari.
Samm 3) Järgmiseks prindime kuupäeva ja käivitame koodi.
Väljund on ootuspärane.
Python Praegune kuupäev ja kellaaeg: nüüd() täna()
Step 1) Nagu kuupäevaobjekte, saame ka kasutada „KUUPÄEVAAJA OBJEKTID” in Python. Python kuupäeva ja kellaaja objektid annavad kuupäeva koos kellaajaga tunnid, minutid, sekundid ja millisekundid.
Kui käivitame kuupäeva-aja koodi, annab see väljundi praeguse kuupäeva ja kellaajaga.
Step 2) Funktsiooniga „DATETIME OBJECT” saab välja kutsuda ka ajaklassi. Oletame, et tahame printida ainult praeguse kellaaja ilma kuupäevata.
t = datetime.time(datetime.now())
- Olime importinud ajaklassi. Me määrame sellele praeguse aja väärtuse, kasutades datetime.now()
- Me omistame muutujale t praeguse aja väärtuse.
Ja see annab mulle lihtsalt aega. Nii et käivitame selle programmi.
Olgu, näete, et siin on mul kuupäev ja kellaaeg. Ja järgmisel real on mul ainult kellaaeg.
Step 3) Rakendame oma nädalapäeva indekseerijat nädalapäevade massiiviloendile, et teada saada, milline päev täna on.
- Nädalapäevade operaatorile (wd) omistatakse number vahemikus (0-6) olenevalt sellest, milline on praegune nädalapäev. Siin deklareerisime päevade (E, T, K…P) loendi massiivi.
- Kasutage seda indeksi väärtust, et teada saada, mis päev on. Meie puhul on see number 2 ja see tähistab kolmapäeva, nii et väljundis prinditakse välja "Mis on kolmapäev".
Siin on täielik kood praeguse kuupäeva ja kellaaja hankimiseks, kasutades kohe kuupäeva
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()
Kuidas vormindada kuupäeva ja kellaaja väljundit Strftime() abil
Siiani oleme õppinud, kuidas kasutada datetime'i ja date'i. objekt sisse Python. Liigume sammu edasi ja õpime kasutama vormindamisfunktsiooni kellaaja ja kuupäeva vormindamiseks.
Step 1) Kõigepealt näeme lihtsat sammu aasta vormindamiseks. Parem on aru saada näite abil.
- Me kasutasime „strftime funktsioon” vormindamiseks.
- See funktsioon kasutab erinevaid kontrollkood väljundit andma.
- Iga juhtkood sarnaneb erinevate parameetritega nagu aasta, kuu, nädalapäev ja kuupäev [(%y/%Y – aasta), (%a/%A- nädalapäev), (%b/%B- kuu), (%d – kuu päev)] .
- Meie puhul on see nii ("%Y") mis meenutab aastat, prindib välja täisaasta koos sajandiga (nt 2018).
Step 2) Kui nüüd asendate ("%Y") väiketähtedega, st ("%y) ja käivitate koodi, kuvatakse väljund ainult (18), mitte (2018). Aasta sajandit ei kuvata nii, nagu on näidatud alloleval ekraanipildil
Step 3) Strf-funktsioon saab kuupäeva, päeva, kuu ja aasta eraldi deklareerida. Samuti saab funktsiooni strftime juhtkoodi väikeste muudatustega teksti stiili vormindada.
Kui funktsioonis strftime asendada (%a) suure A-ga, st (%A), siis väljastatakse väljund kujul „reede“, mitte lihtsalt lühendina „R“.
Step 4) Funktsiooni “Strftime” abil saame hankida ka kohaliku süsteemi kellaaja, kuupäeva või mõlemad.
- %C- näitab kohalikku kuupäeva ja kellaaega
- %x- näitab kohalikku kuupäeva
- %X- näitab kohalikku aega
Väljundis näete oodatud tulemust
Step 5) Funktsioon "strftime" võimaldab teil helistada kellaaega mis tahes vormingus 24 tundi või 12 tundi.
Lihtsalt määrates juhtkoodi nagu % I/H tunniks, % M minutiks, %S sekundiks, saab kõneaega erinevate vormingute jaoks
12 tundi aeg on deklareeritud [print now.strftime(“%I:%M:%S %p) ]
24 tundi aeg on deklareeritud [print now.strftime(“%H:%M”)]
Siin on täielik kood datetime teisendamiseks stringobjektiks.
# #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()
Milles on Timedelta Python?
Timedelta sisse Python on objekt, mis esindab kestust. Seda kasutatakse peamiselt kahe kuupäeva ja kellaaja vahelise kestuse arvutamiseks. Seda kasutatakse ka objekti hankimiseks koos teatud delta kuupäeva ja kellaajaga. Aja delta objekt toetab matemaatilisi tehteid, nagu liitmised, alamtehtedtrackorrutamine, jagamine jne.
Kuidas kasutada Timedelta objekte
koos Python timedelta objektid, saate hinnata aega nii tuleviku kui ka mineviku jaoks. Teisisõnu, see on ajavahemik mis tahes erilise päeva, kuupäeva või kellaaja ennustamiseks.
Pidage meeles, et see funktsioon ei ole mõeldud kellaaja või kuupäeva väljatrükkimiseks, vaid millegi tuleviku või mineviku ARVUTAMISEKSVaatame a Python timedelta näide, et seda paremini mõista.
Step 1) Timedelta objektide käivitamiseks peate esmalt deklareerima impordilause ja seejärel käivitama koodi
- Kirjutage timedelta impordiavaldus
- Nüüd kirjutage kood objekti printimiseks aja delta järgi, nagu on näidatud ekraanipildil
- Käivitage kood. Timedelta tähistab 365 päeva, 8 tundi ja 15 minutit ning prindib sama
Segane? Järgmine samm aitab -
Step 2) Vaatame tänast kuupäeva ja kellaaega, et kontrollida, kas meie impordiaruanne töötab hästi. Kui kood käivitatakse, prindib see välja tänase kuupäeva, mis tähendab, et meie impordiavaldus töötab hästi
Step 3) Vaatame, kuidas saame aasta pärast deltaobjektide kaudu kuupäeva taastada. Kui me koodi käivitame, annab see ootuspärase väljundi.
Step 4) Veel üks näide sellest, kuidas aja deltat saab kasutada tulevase kuupäeva arvutamiseks praegusest kuupäevast ja kellaajast
Step 5) Vaatame keerukamat näidet. Tahaksin kindlaks teha, mitu päeva on uuest aastast möödas. Siin on, kuidas me jätkame
- Kasutades täna= date.today() saame tänase kuupäeva
- Teame, et uusaasta on alati 1. jaanuar, kuid aasta võib olla erinev. Kasutades nyd= date(täna.aasta,1,1) salvestame uue aasta muutujasse nyd
- if nyd < today: võrdleb, kas praegune kuupäev on uuest aastast hilisem. Kui jah, siis siseneb see while-tsüklisse
- ((täna-nyd).days) annab praeguse kuupäeva ja uue aasta erinevuse DAYS-is
Väljund näitab, et "uusaastapäev läks juba 11 päeva tagasi."
Siin on täielik töökood
# # 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 Näide
Järgmised näited kujutavad samu kuupäeva ja kellaaja toiminguid, mis on kirjutatud Python 2, kus print on pigem lause kui funktsioon. Kasutage neid versioone ainult pärandversioonide säilitamisel. Python 2 koodi.
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)




















