Ez a modul idÅ‘ és dátumkezelÅ‘ függvényeket tartalmaz – a C futásidejű könyvtárra épülve. A megadott dátum vagy idÅ‘pont lehet idÅ‘bélyeg formátumú (1970 január 1 óta eltelt másodpercek száma), vagy egy tuple.
# File: time_mennyi_a_pontos_ido.py import time most = time.time() print most, "masodperc telt el ", time.gmtime(0)[:6], "ota" print print "Vagy maskepp:" print "- helyi ido:", time.localtime(most) print "- utc ido:", time.gmtime(most) # utc: Coordinated Universal Time roviditese, kb ugyanaz mint a Greenwich-i ido volt.
# File: time_mennyi_a_pontos_ido.out 1150358359.2 masodperc telt el (1970, 1, 1, 0, 0, 0) ota Vagy maskepp: - helyi ido: (2006, 6, 15, 9, 59, 19, 3, 166, 1) - utc ido: (2006, 6, 15, 7, 59, 19, 3, 166, 0)
A localtime és a gmtime által visszaadott tuple tartalma: év, hónap, nap, óra, perc, másodperc, a hét hányadik napja, az év hányadik napja, Napfény-mentő idő van-e.
Daylight Saving Time (Részletek itt): Napfény-mentÅ‘ idÅ‘(számÃtás). Amikor egy órával elállÃtják az órát, hogy az aktÃv napi életvitelre (pl. munka) több napos óra essen, Ãgy csökkenthetÅ‘ az áramfogyasztás. A Python esetében: a szám jelzi, hogy mennyit adnak a szabványos idÅ‘höz (rendszerint 1 órát). Nyáron ez nálunk 1 óra, mivel egyel elÅ‘bbre állÃtjuk az órát.
Természetesen a szokásos karakterlánc-formázó műveletekkel az idÅ‘ tuplét karakterlánccá alakÃthatod, ám a time modulnak vannak saját konverziós függvényei is.
# File: time_ido_tuple_karakterlancca_alakitasa.py import time most = time.localtime(time.time()) print time.asctime(most) print time.strftime("%y/%m/%d %H:%M", most) print time.strftime("%a %b %d", most) print time.strftime("%c", most) print time.strftime("%I %p", most) print time.strftime("%Y-%m-%d %H:%M:%S %Z", most) # FONTOS: magyar felhasznalok szamara a magyar nap kiiras erdekes lehet az utolso sorbol. # ugyanez kezzel... ev, ho, nap, ora, perc, masodperc, a_het_ennyiedik_napja, az_ev_ennyiedik_napja, ora_visszaallitas = most print "%04d-%02d-%02d" % (ev, ho, nap) print "%02d:%02d:%02d" % (ora, perc, masodperc) print ("Hetfo", "Kedd", "Szerda", "Csutortok", "Pentek", "Szombat", "Vasarnap")[a_het_ennyiedik_napja], az_ev_ennyiedik_napja
# File: time_ido_tuple_karakterlancca_alakitasa.out Fri Jun 16 08:51:22 2006 06/06/16 08:51 Fri Jun 16 06/16/06 08:51:22 08 AM 2006-06-16 08:51:22 Közép-európai nyári id&o tilde; 2006-06-16 08:51:22 Pentek 167
A time modul tartalmazza az strptime függvényt, ami az strftime ellentéte. Megadott karakterlánc alapján előállÃtja a megfelelÅ‘ idÅ‘-tuplét.
# File: time_karakterlancok_atalakitasa_tuple_ido_alakra.py import time try: print time.strptime("31 Nov 00", "%d %b %y") except: print "november 30 napos - ez a pelda nem mukodik!" # itt visszakapjuk a karakterlanchoz tartozo tuple idoalakot. print time.strptime("30 Nov 06", "%d %b %y")
# File: time_karakterlancok_atalakitasa_tuple_ido_alakra.out november 30 napos - ez a pelda nem mukodik! (2006, 11, 30, 0, 0, 0, 3, 334, -1)
# File: time_ido_tuple_atalakitasa_idobelyegge.py import time ido = time.time() helyi_ido = time.localtime(ido) print ido print helyi_ido print "idobelyeg:", time.mktime(helyi_ido)
# File: time_ido_tuple_atalakitasa_idobelyegge.out 1150616830.1(2006, 6, 18, 9, 47, 10, 6, 169, 1) idobelyeg: 1150616830.0
Különbség van egy utasÃtás sorozat lefutási ideje és a processzor által a feladatra fordÃtott idÅ‘ között. Pl. amikor a felhasználói bemenetre várunk, a processzor minimális idÅ‘t fordÃt a feladatra, mÃg a lefutási idÅ‘ ketyeg, amÃg a felhasználó nem viszi be a kért adatot. Windows-on a két értéket a Python nem tudja megkülönböztetni.
# File: time_algoritmus_vegrehajtasi_ido_merese.py import time def feladat(): print "itt most nagyon dolgozom" raw_input("kerlek uss entert!") # a feldolgozasi ido merese idopont = time.clock() print idopont feladat() print time.clock() - idopont, "masodpercet dolgozott a CPU a feladaton." # a feladat futasi ideje idopont = time.time() feladat() print time.time() - idopont, "masodperc volt a teljes futasi ido"
# File: time_algoritmus_vegrehajtasi_ido_merese.out 0.01 itt most nagyon dolgozom kerlek uss entert!0.0 masodpercet dolgozott a CPU a feladaton. itt most nagyon dolgozom kerlek uss entert!3.79632997513 masodperc volt a teljes futasi ido
You must be logged in to post a comment.