Python

Používanie metódy Python sleep ()

Používanie metódy Python sleep ()
Ak chcete nastaviť časové oneskorenie pred vykonaním ľubovoľného skriptu, môžete použiť spánok () funkcia, ktorá je zabudovaná do Pythonu. Táto metóda existuje v rámci čas modul. Funkcia sleep () sa všeobecne používa na zastavenie vykonávania programu na dané časové obdobie (v sekundách). Napríklad ak sťahujete súbor z umiestnenia pomocou skriptu, ktorý môže vyžadovať určité časové obdobie, môžete pomocou metódy sleep () informovať používateľa o čakaní. Tento tutoriál vám ukáže niektoré z rôznych použití funkcie sleep () v Pythone 3.

Syntax

Nasledujúci príklad ukazuje jednoduché použitie funkcie sleep () na zastavenie vykonávania programu uprostred skriptu na určité obdobie. Skript načíta a vytlačí aktuálnu hodnotu systémového času, počká na 5 sekúnd pod funkciou sleep () a znova načíta a vytlačí aktuálny systémový čas. Tu sa na čítanie aktuálneho systémového dátumu a času používajú funkcie localtime () a time () a na tlač formátovaného času sa používa funkcia strftime ().

#!/ usr / bin / env python3
# Importovať časový modul
čas importu
 
# Prečítajte si aktuálny dátum a čas
teraz = čas.miestny čas (čas.čas ())
 
# Čas začiatku tlače
tlač (čas.strftime ("Čas začiatku:% H:% M:% S", teraz))
 
# Počkajte 5 sekúnd
tlač („Čaká sa na 5 sekúnd ...“)
čas.spánok (5)
 
# Prečítajte si aktuálny dátum a čas
teraz = čas.miestny čas (čas.čas ())
 
# Čas ukončenia tlače
tlač (čas.strftime ("Čas ukončenia:% H:% M:% S", teraz))

Výkon

Po spustení vyššie uvedeného skriptu sa zobrazí nasledujúci výstup. Výstup ukazuje, že doba medzi začiatkom a koncom je 5 sekúnd pomocou funkcie sleep ().

Príklad 2: Vytvorenie počítadla času pomocou režimu spánku ()

Nasledujúci príklad ukazuje, ako ľahko vytvoriť počítadlo času pomocou metódy sleep (). Skriptu bude trvať inicializácia premennej počítadla času niekoľko sekúnd.  Tu sa importujú tri moduly. The Dátum Čas modul sa importuje na nastavenie počiatočnej hodnoty času. The čas modul sa importuje na použitie funkcie sleep (). The sys modul slúži na ukončenie slučky nekonečna while, keď sa hodnota počítadla rovná hodnote časového počítadla. V skripte sa používajú štyri premenné na inicializáciu premenných hodín, minút, sekúnd a počítadla na nastavenie počiatočného času počítadla času. Tu funkcia sleep () počká jednu sekundu v každej iterácii slučky a potom vytlačí hodnotu počítadla času.

#!/ usr / bin / env python3
# Importovať modul datetime
importovať čas a čas
# Importovať časový modul
čas importu
# Importovať sys modul
import sys
 
# Počítajte počet sekúnd
timer = int (vstup ("Nastaviť hodnotu počítadla v sekundách:"))
# Inicializuje čas a hodnotu počítadla na 0
hodina = minúta = sekunda = počítadlo = 0
 
# Vytlačte začiatočnú hodnotu časovača
tlačiť (datetime.čas (hodina, minúta, sekunda))
skúste:
# Definujte nekonečnú slučku
zatiaľ čo je pravda:
 
# Oneskorenie na 1 sekundu
čas.spánok (1)
# Počítadlo prírastku o 1
pult = pult + 1
# Prírastok sekundu o 1
druhý = druhý + 1
# Vytlačte aktuálnu hodnotu časovača
tlačiť (datetime.čas (hodina, minúta, sekunda))
# Nastavte druhú hodnotu na 0, ak je hodnota vyššia ako 60
ak je druhý> 60:
minúta = minúta + 1
druhý = 0
# Nastavte hodnotu minúty na 0, keď je hodnota vyššia ako 60
ak minúta> 60:
hodina = hodina + 1
minúta = 0
# Ukončite slučku, keď sa hodnota počítadla rovná hodnote časovača
if counter == časovač:
tlač („Čas skončil.„)
prestávka
okrem KeyboardInterrupt:
# Ukončite skript, keď stlačíte Ctrl + C
sys.východ

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup.

Príklad 3: Vytlačte každý znak reťazca s oneskorením

Ak chcete zobraziť každý znak textu s určitým oneskorením vo výstupe, môžete v skripte použiť funkciu sleep (). Podobná úloha je uvedená v nasledujúcom skripte. Tu sa za vstup považuje textová hodnota. Každý znak textu je iterovaný pomocou slučky a funkcia počká na 0.4 sekundy pred tlačou.

#!/ usr / bin / env python3
# časový modul importu
čas importu
 
# Vezmite hodnotu reťazca
name = input ("Zadajte svoje meno:")
# Iteráciou slučky načítajte každý znak z reťazca
pre val v mene:
# Vytlačte každý znak bez nového riadku
print (val, end = ")
# Počkajte na 0.4 sekundy po vytlačení každého znaku
čas.spánok (0.4)

Výkon

Spustite skript. Po spustení skriptu budete výstupu správne rozumieť.

Príklad 4: Použitie sleep () v Multi-Threaded Script

Nasledujúci príklad ukazuje použitie funkcie sleep () vo viacvláknovom skripte Python. Importujú sa sem dva moduly: časový modul na použitie funkcie sleep () a závitový modul na vytváranie viacerých vlákien. V skripte sú použité dve vlastné funkcie. Textová správa sa vytlačí a počká na 0.5 trikrát vo vnútri cyklu for, keď sa začína prvé vlákno. Textová správa sa vytlačí a počká na 1 druhýkrát štyrikrát vo vnútri cyklu for, keď sa začína druhé vlákno.

#!/ usr / bin / env python3
# časový modul importu
čas importu
# Importovať vláknový modul
importovanie závitov
 
# Definujte funkciu prvého vlákna
def prn_message_1 ():
pre n v rozsahu (3):
tlač ("Tlačiť vlákno 1 správa")
čas.spánok (0.5)
 
# Definujte funkciu druhého vlákna
def prn_message_2 ():
pre n v rozsahu (4):
tlačiť („Tlačiť správu s vláknom 2“)
čas.spánok (1)
 
# Nastavte funkciu prvého vlákna
závit1 = závitovanie.Vlákno (target = prn_message_1)
# Spustite prvú funkciu vlákna
vlákno1.štart ()
# Nastavte funkciu druhého vlákna
thread2 = závitovanie.Vlákno (target = prn_message_2)
# Spustite funkciu druhého vlákna
vlákno2.štart ()

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup. Po spustení prvého vlákna začne druhé vlákno a počkáte na dokončenie 1 sekundu. Počas tejto doby je slučka prvého vlákna dokončená posledné dve iterácie. Posledné tri výstupy sa objavili pre slučku druhého vlákna.

Záver

Funkcia sleep () sa používa na riešenie mnohých rôznych typov časovo súvisiacich problémov v Pythone. Rôzne použitia tejto metódy sú vysvetlené pomocou veľmi jednoduchých príkladov, ktoré čitateľovi pomôžu spoznať funkcie tohto nástroja. Verím, že vy alebo akýkoľvek iný používateľ Pythonu budete môcť túto metódu správne používať po nacvičení príkladov uvedených v tomto návode.

Tlačidlo ľavého kliknutia myši nefunguje v systéme Windows 10
Ak používate samostatnú myš s prenosným počítačom alebo stolovým počítačom, ale nefunguje ľavé tlačidlo myši vo Windows 10/8/7 z nejakého dôvodu uvádz...
Kurzor pri písaní v systéme Windows 10 skáče alebo sa pohybuje náhodne
Ak zistíte, že kurzor myši skáče alebo sa pohybuje sám, automaticky a náhodne pri písaní na notebooku alebo počítači so systémom Windows, niektoré z t...
Ako zmeniť smer posúvania myši a touchpadu v systéme Windows 10
Myš a TouchpadNielenže uľahčujú výpočty, ale sú aj efektívnejšie a menej časovo náročné. Nemôžeme si predstaviť život bez týchto zariadení, ale je pra...