Python Kuupäev, kellaaegDelta, Strftime(Format) koos näidetega

In Python, kuupäev, kellaaeg ja kellaaeg klassid pakuvad mitmeid funktsioone kuupäevade, kellaaegade ja ajavahemike käsitlemiseks. Kuupäev ja kellaaeg sisse Python on objektid, nii et kui te nendega manipuleerite, siis tegelikult manipuleerite objektidega, mitte stringide või ajatemplitega. Kui muudate kuupäevi või kellaaega, peate importima kuupäeva ja kellaaja funktsiooni.

Kuupäevatunnid sisse Python on jagatud 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 – abstraktne klass ajavööndite käsitlemiseks

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.

Kasutage kuupäeva ja kuupäeva ja kellaaja klassi

Need impordiavaldused on rakenduses eelnevalt määratletud funktsioonid Python teek, mis võimaldab teil manipuleerida kuupäevade ja kellaaegadega 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 Python. Me ei kirjuta selle kuupäevafunktsiooni koodi, vaid impordime selle enda kasutamiseks

Samm 2) Järgmiseks loome kuupäevaobjekti eksemplari.

Kasutage kuupäeva ja kuupäeva ja kellaaja klassi

Samm 3) Järgmiseks prindime kuupäeva ja käivitame koodi.

Kasutage kuupäeva ja kuupäeva ja kellaaja klassi

Väljund on ootuspärane.

Prindi kuupäev kasutades date.today()

date.today funktsioonil on sellega seotud mitmeid omadusi. Saame printida üksikuid päevi/kuusid/aastaid ja palju muud

Vaatame näite

Prindi kuupäev kasutades date.today()

Tänane tööpäeva number

Funktsioon date.today() annab teile ka nädalapäeva numbri. Siin on nädalapäevade tabel, mis algab 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.

Prindi kuupäev kasutades date.today()

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.

Python Praegune kuupäev ja kellaaeg

Kui käivitame kuupäeva-aja koodi, annab see väljundi praeguse kuupäeva ja kellaajaga.

Step 2) Funktsiooniga "DATETIME OBJECT" saate helistada 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.

Python Praegune kuupäev ja kellaaeg

Olgu, nii et näete, et siin on kuupäev ja kellaaeg. Ja siis järgmine rida, mul on lihtsalt aeg omaette

Step 3) Rakendame oma nädalapäeva indekseerija oma nädalapäeva massiiviloendile, et teada saada, milline päev täna on

  • Nädalapäevade operaatorile (wd) määratakse number vahemikus (0–6) sõltuvalt sellest, milline on praegune nädalapäev. Siin deklareerisime loendi massiivi päevade kaupa (E, T, K...P).
  • 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".

Python Praegune kuupäev ja kellaaeg

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

Praeguseks oleme õppinud, kuidas kasutada kuupäeva, kellaaega ja kuupäeva 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.

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

  • Me kasutasime "strftime funktsioon" vormindamiseks.
  • See funktsioon kasutab erinevaid kontrollkood väljundit andma.
  • Iga juhtkood meenutab erinevaid parameetreid, 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

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

Step 3) Strf-funktsioon saab eraldi deklareerida kuupäeva, päeva, kuu ja aasta. Ka väikeste muudatustega strftime funktsioonis juhtkoodis saate vormindada teksti stiili.

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

Funktsiooni strftime sees, kui asendate (%a) suure A-ga, st (%A), trükitakse väljund lihtsalt lühendi "Fri" asemel "Firday".

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

Step 4) Funktsiooni “Strftime” abil saame hankida ka kohaliku süsteemi kellaaja, kuupäeva või mõlemad.

  1. %C- näitab kohalikku kuupäeva ja kellaaega
  2. %x- näitab kohalikku kuupäeva
  3. %X- näitab kohalikku aega

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

Väljundis näete oodatud tulemust

Step 5) Funktsioon "strftime" võimaldab teil helistada kellaaega mis tahes vormingus 24 tundi või 12 tundi.

Vormindage kuupäeva ja kellaaja väljund funktsiooniga Strftime()

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 tähistab kestust. Seda kasutatakse peamiselt kahe kuupäeva ja kellaaja vahelise kestuse arvutamiseks. Seda kasutatakse ka teatud delta kuupäeva ja kellaajaga objekti allalaadimiseks. Timedelta objekt toetab matemaatilisi toiminguid, nagu liitmine, lahutamine, korrutamine, 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 ARVUTAMISEKS. Vaatame an 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

Timedelta objektid

  1. Kirjutage timedelta impordiavaldus
  2. Nüüd kirjutage kood objekti printimiseks aja delta järgi, nagu on näidatud ekraanipildil
  3. 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

Timedelta objektid

Step 3) Vaatame, kuidas saame aasta pärast deltaobjektide kaudu kuupäeva taastada. Kui me koodi käivitame, annab see ootuspärase väljundi.

Timedelta objektid

Step 4) Veel üks näide sellest, kuidas aja deltat saab kasutada tulevase kuupäeva arvutamiseks praegusest kuupäevast ja kellaajast

Timedelta objektid

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 < täna: võrdleb, kas praegune kuupäev on suurem kui uus aasta. Kui jah, siseneb see while-tsüklisse
  • ((täna-nyd).days) annab praeguse kuupäeva ja uue aasta erinevuse DAYS-is

Timedelta objektid

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

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)

kokkuvõte

Kuupäevade ja kellaaegade manipuleerimiseks nii lihtsal kui ka keerulisel viisil pakub datetime moodul erinevaid klasse või kategooriaid, nagu

  • 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 – abstraktne klass ajavööndite käsitlemiseks

Kuupäeva-aja objektide kasutamine

  • Datetime-time objektide importimine enne koodi käivitamist on kohustuslik
  • Funktsiooni date.today kasutamine nii üksiku kuupäeva/kuu/aasta printimiseks kui ka päeva indekseerimiseks
  • Objekti date.time kasutamine aja saamiseks tundides, minutites, sekundites ja millisekundites

Time-Out vormindamine funktsiooniga str f time

  • Aasta vormingu muutmiseks kasutage funktsiooni str f time function
  • Trüki päev, kuupäev, kuu ja aasta eraldi,
  • Helistamisaeg mis tahes vormingus 12 tundi või 24 tundi

Timedelta objektid

  • Timedelta objektide abil saate hinnata aega nii tuleviku kui ka mineviku jaoks
  • Arvutage eripäevaks (sünnipäevaks) jäänud päevade koguarv praegusest kellaajast
  • Arvutage eripäevaks (sünnipäevaks) möödunud päevade koguarv praegusest kellaajast