Piton

A Python sleep () módszer használata

A Python sleep () módszer használata
Ha bármilyen szkript futtatása előtt szeretne beállítani egy késleltetést, akkor a alvás() a Pythonba épített funkció. Ez a módszer a idő modul. Általában az sleep () függvény segítségével állítható le a program végrehajtása az adott időtartamra (másodpercben). Például, ha egy fájlt olyan helyről tölt le egy szkript használatával, amely bizonyos időtartamot igényelhet, akkor a sleep () módszerrel tájékoztathatja a felhasználót, hogy várjon. Ez az oktatóanyag bemutatja a sleep () függvény különböző felhasználási módjait a Python 3-ban.

Szintaxis

Az alábbi példa bemutatja a sleep () függvény egyszerű használatát a program végrehajtásának leállítására a szkript közepén egy bizonyos ideig. A szkript beolvassa és kinyomtatja az aktuális rendszeridőértéket, 5 másodpercet vár az alvás () függvény alatt, majd újra elolvassa és kinyomtatja az aktuális rendszeridőt. Itt a localtime () és az time () függvényeket használják az aktuális rendszer dátumának és idejének beolvasására, az strftime () függvényt pedig a formázott idő nyomtatására.

#!/ usr / bin / env python3
# Időmodul importálása
import idő
 
# Olvassa el az aktuális dátumot és időt
most = idő.helyi idő (idő.idő())
 
# A nyomtatás kezdési ideje
nyomtatás (idő.strftime ("A kezdési idő:% H:% M:% S", most))
 
# Várjon 5 másodpercet
nyomtatás ("Várakozás 5 másodpercig ...")
idő.alvás (5)
 
# Olvassa el az aktuális dátumot és időt
most = idő.helyi idő (idő.idő())
 
# A nyomtatás befejezési ideje
nyomtatás (idő.strftime ("A befejezés ideje:% H:% M:% S", most))

Kimenet

A fenti kimenet a fenti parancsfájl futtatása után jelenik meg. A kimenet azt mutatja, hogy a kezdési és a befejezési idő közötti időtartam 5 másodperc, az alvás () funkció használatával.

2. példa: Időszámláló létrehozása az alvás () használatával

A következő példa bemutatja, hogyan lehet egyszerűen létrehozni egy időszámlálót a sleep () módszerrel. A szkript másodpercek alatt megad egy számot az időszámláló változó inicializálásához.  Három modul importálódik ide. A dátum idő modult importáljuk a kezdeti időérték beállításához. A idő modult importálják a sleep () függvény használatához. A sys modult használjuk a végtelen while hurok megszüntetésére, amikor a számláló értéke megegyezik az időszámláló értékével. Négy változót használnak a szkriptben az óra, perc, másodperc és számláló változók inicializálásához az időszámláló kezdési idejének beállításához. Itt az sleep () függvény egy másodpercet vár a hurok minden iterációjában, majd kinyomtatja az időszámláló értékét.

#!/ usr / bin / env python3
# Dátumidő modul importálása
importálás ideje
# Időmodul importálása
import idő
# Sys modul importálása
import sys
 
# Vegyük a másodpercek számát
timer = int (input ("Állítsa be a számláló értékét másodpercben:"))
# Inicializálja az időt és az ellenértéket 0-ra
óra = perc = másodperc = számláló = 0
 
# Nyomtassa ki a kezdő időzítő értékét
nyomtatás (datetime.idő (óra, perc, másodperc))
próbáld ki:
# Definiáljon végtelen ciklust
míg True:
 
# Késés 1 másodpercig
idő.alvás (1)
# Növekményszámláló 1-vel
számláló = számláló + 1
# Növelje a másodikat 1-gyel
másodperc = második + 1
# Nyomtassa ki az aktuális időzítő értékét
nyomtatás (datetime.idő (óra, perc, másodperc))
# Állítsa a második értéket 0-ra, ha az érték nagyobb, mint 60
ha második> 60:
perc = perc + 1
másodperc = 0
# Állítsa a perc értékét 0-ra, ha az érték nagyobb, mint 60
ha perc> 60:
óra = óra + 1
perc = 0
# Szüntesse meg a ciklust, ha a számláló értéke megegyezik az időzítő értékével
ha számláló == időzítő:
print ("Az idő befejeződött.")
szünet
kivéve a KeyboardInterrupt:
# A Ctrl + C megnyomásakor fejezze be a parancsfájlt
sys.kijárat

Kimenet

A következő kimenet jelenik meg a szkript futtatása után.

3. példa: Egy karakterlánc minden karakterének kinyomtatása késéssel

Ha a szöveg egyes karaktereit némi késéssel kívánja megjeleníteni a kimenetben, akkor alkalmazhatja a sleep () függvényt a szkriptben. Hasonló feladatot mutat be a következő szkript. Itt egy szöveges érték kerül bevitelre. A szöveg minden karakterét a ciklus segítségével iteráljuk, és a függvény 0-ra vár.4 másodperccel a nyomtatás előtt.

#!/ usr / bin / env python3
# import idő modul
import idő
 
# Vegyünk egy string értéket
név = bevitel ("Írja be a nevét:")
# Ismételje meg a ciklust az egyes karakterek kiolvasásához a karakterláncból
a val névhez:
# Minden karakter nyomtatása új sor nélkül
nyomtatás (val, end = ")
# Várjon 0-ra.4 másodperccel az egyes karakterek kinyomtatása után
idő.alvás (0.4)

Kimenet

Futtassa a szkriptet. A kimenetet a szkript futtatása után meg fogja érteni.

4. példa: Az alvás () használata a többszálú szkriptben

Az alábbi példa bemutatja a sleep () függvény használatát a többszálas Python szkriptben. Két modul importálódik ide: az idő modul a sleep () függvény használatához és a menetes modul több szál létrehozásához. Két egyedi függvényt használ a szkript. Egy szöveges üzenet kinyomtatva vár 0.5 másodpercig háromszor a for cikluson belül, amikor az első szál elindul. Egy szöveges üzenet kinyomtatva vár 1 másodszor négyszer a for ciklus belsejében, amikor a második szál elindul.

#!/ usr / bin / env python3
# import idő modul
import idő
# Menetmodul importálása
import menetelés
 
# Határozza meg az első szálfüggvényt
def prn_message_1 ():
n esetén a (3) tartományban:
nyomtatás ("1. szál üzenet nyomtatása")
idő.alvás (0.5)
 
# Határozza meg a második szálfüggvényt
def prn_message_2 ():
n esetén a tartományban (4):
nyomtatás ("2. szál nyomtatási üzenete")
idő.alvás (1)
 
# Állítsa be az első szál funkciót
menet1 = menetfűzés.Szál (target = prn_message_1)
# Indítsa el az első szál funkciót
szál1.Rajt()
# Állítsa be a második szál funkciót
menet2 = menetfűzés.Szál (target = prn_message_2)
# Indítsa el a második szál funkciót
menet2.Rajt()

Kimenet

A következő kimenet jelenik meg a szkript futtatása után. Az első szál elindítása után kezdődik a második szál, és várjon 1 másodpercig a befejezéséig. Ez idő alatt az első szál hurka befejezi az utolsó két iterációt. Az utolsó három kimenet jelent meg a második szál hurokjára.

Következtetés

Az sleep () függvény sokféle, az idővel kapcsolatos probléma megoldására szolgál a Pythonban. Ennek a módszernek a különféle felhasználásait itt nagyon egyszerű példákkal magyarázzák, amelyek segítenek az olvasónak megismerni az eszköz funkcióit. Úgy gondolom, hogy Ön vagy bármely más Python felhasználó képes lesz megfelelően használni ezt a módszert az oktatóanyagban szereplő példák gyakorlása után.

A legjobb játékkonzol emulátorok Linuxhoz
Ez a cikk felsorolja a Linux számára elérhető népszerű játékkonzol-emulációs szoftvereket. Az emuláció egy szoftver-kompatibilitási réteg, amely játék...
A legjobb Linux-disztribútorok játékhoz 2021-ben
A Linux operációs rendszer hosszú utat tett meg eredeti, egyszerű, szerver alapú kinézetétől. Ez az operációs rendszer rendkívül javult az elmúlt évek...
Hogyan lehet rögzíteni és streamelni a játékmenetét Linuxon
Korábban a játékokat csak hobbinak tekintették, de az idő múlásával a játékipar hatalmas növekedést ért el a technológia és a játékosok száma szempont...