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.

  • 🔘 Viis klassi: Datetime moodul koondab kuupäeva ja kellaajaga töötamiseks klassid date, time, datetime, timedelta ja tzinfo.
  • ☑️ Praegused väärtused: datetime.now() ja date.today() tagastavad praeguse kuupäeva ja kellaaja, sealhulgas nädalapäeva numbri.
  • Vormindamine: Funktsioon strftime() muudab kuupäeva ja kellaaja loetavaks tekstiks, kasutades juhtkoode nagu %Y, %A ja %H.
  • 🧪 Ajavahemiku delta: Ajavahemiku delta objekt mõõdab kestust ja ennustab liitmise ja alamtehingute abil tulevasi või mineviku kuupäevi.tracmise kohta.
  • 🛠️ direktiivid: Samad juhtkoodid juhivad strftime() funktsiooni väljundi jaoks ja strptime() funktsiooni stringi lugemiseks tagasi datetime'i.
  • 🤖 Tehisintellekti töövood: Masinõppe torujuhtmed tuletavad aegridade mudelite jaoks kuupäeva ja kellaaja funktsioone, näiteks nädalapäeva ja tunni.

Python Kuupäev Kellaaeg

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.

Kasutage kuupäeva ja kuupäeva ja kellaaja klassi

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

Prindi kuupäev kasutades date.today()

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.

Prindi kuupäev kasutades date.today()

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.

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” 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.

Python Praegune kuupäev ja kellaaeg

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".

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

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.

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

  • 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

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

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.

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

Kui funktsioonis strftime asendada (%a) suure A-ga, st (%A), siis väljastatakse väljund kujul „reede“, mitte lihtsalt lühendina „R“.

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 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

  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

Timedelta objektid

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 < 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

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

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)

KKK

Kasuta datetime.strptime(text, format), et sõne datetime objektiks parsida. Edastage samad direktiivid, mida strftime() kasutab, nii et „2018-06-29” loetakse kujul „%Y-%m-%d”. Vastupidiselt strftime()-le muudab strptime() inimloetava teksti tagasi datetimeks, millega saab arvutada.

Kuupäev ja kellaaeg ilma tzinfo-ta on naiivne; ajavööndi lisamine teeb selle teadlikuks. Kasutage sisseehitatud zoneinfo moodulit (Python 3.9+) või Pytz-paketi abil saab lokaliseerida kuupäeva ja kellaaja ning seejärel teisendada tsoonide vahel, et arvutused püsiksid piirkondades õiged.

Kutsu timestamp() meetodit datetime'il, et saada Unixi epohhist alates möödunud sekundid ujukoma kujul, näiteks datetime.now().timestamp(). Teise võimalusena loob datetime.fromtimestamp(value) datetime.fromtimestamp(value) Unixi ajatempli põhjal datetime'i ja kellaaja uuesti.

Mõlemad tagastavad praeguse kohaliku kuupäeva ja kellaaja, kuid datetime.now() aktsepteerib valikulist ajavööndi argumenti, samas kui datetime.today() seda ei tee. Ajavöönditundliku koodi puhul eelista datetime.now(tz) funktsiooni, et tulemus kannaks õiget nihet, mitte ei jääks naiivseks.

Jah. Kuupäeva ja kellaaja moodul on kaasas Python, seega pole pip-i installimist vaja. Importige see käsuga „from datetime import datetime, date, time, timedelta” ja klassid date, time, datetime, timedelta ja tzinfo on kohe saadaval.

Standardse ISO 8601 stringi, näiteks „2018-06-29T08:15:27“, saamiseks kutsuge meetod isoformat(). Kuupäevaobjekti puhul tagastab see „YYYY-MM-PP“. isoformat() ei vaja juhtkoode, erinevalt funktsioonist strftime(), mis loob direktiivide põhjal kohandatud paigutusi.

Masinõppe torujuhtmed muudavad töötlemata ajatemplitest datetime ja timedelta abil funktsioone, nagu nädalapäev, tund, kuu ja möödunud aeg. Need konstrueeritud kuupäevafunktsioonid aitavad aegridade mudelitel ja tehisintellekti prognoosimissüsteemidel tuvastada hooajalisi ja tsüklilisi mustreid.

Jah. GitHub Copiloti ja agentide tehisintellekti assistendid genereerivad lühikese kommentaari põhjal strftime() vormingus stringe, ajadelta aritmeetikat ja ajavööndi teisendusi ning oskavad selgitada krüptilisi direktiive. Käivita alati soovitatud kood, kuna kuupäevade käsitlemise ja nihete puhul on lihtne eksida.

Võta see postitus kokku järgmiselt: