Python tijd slapen()

Hallo allemaal, ik hoop dat jullie goed bezig zijn met het leren van Python. In deze tutorial gaan we het hebben over de Python `time.sleep()`-methode. De Python `sleep`-functie behoort tot de python time-module die eerder al is besproken

Python time sleep

. De Python `time.sleep`-functie wordt gebruikt om vertraging toe te voegen aan de uitvoering van een programma. We kunnen de Python `sleep`-functie gebruiken om de uitvoering van het programma te onderbreken gedurende de opgegeven tijd in seconden. Let op dat de Python `time.sleep`-functie eigenlijk alleen de uitvoering van de huidige thread stopt, niet het hele programma

Python time sleep() functiesyntax

. Python `sleep()` is een methode van de Python `time`-module. Dus, eerst moeten we de `time`-module importeren en dan kunnen we deze methode gebruiken. De manier om de Python `sleep()`-functie te gebruiken is als volgt: Hier is het argument van de `sleep()`-methode, t, in seconden. Dat betekent dat wanneer de verklaring `time.sleep(t)` wordt uitgevoerd, de volgende regel code wordt uitgevoerd na t seconden. Zie het volgende voorbeeld:

# importeren van de time-module
import time

print("Before the sleep statement")
time.sleep(5)
print("After the sleep statement")

Als je de bovenstaande code uitvoert, zie je dat de tweede print wordt uitgevoerd na 5 seconden. Je kunt dus vertraging in je code aanbrengen zoals nodig is. Het argument kan ook een drijvende waarde zijn voor een nauwkeurigere vertraging. Bijvoorbeeld, als je een vertraging van 100 milliseconden wilt, wat gelijk is aan 0.1 seconden, dan doe je het volgende:

import time
time.sleep(0.100)

Python sleep voorbeeld

Laten we het volgende voorbeeld van de Python time sleep functie bekijken.

import time
startTime = time.time()
for i in range(0,5):
   print(i)
   # vertraging van 1 seconde creëren
   time.sleep(1)
endTime = time.time()
elapsedTime = endTime - startTime
print("Elapsed Time = %s" % elapsedTime)

Dit zal de volgende output geven:

0
1
2
3
4
Elapsed Time = 5.059988975524902

De verstreken tijd is meer dan 5 omdat bij elke iteratie in de for-lus de uitvoering 1 seconde wordt gestopt. De extra tijd komt door de uitvoeringstijd van het programma, het plannen van het besturingssysteem enzovoort.

Verschillende vertragingstijden van python sleep()

Soms moet je mogelijk voor verschillende seconden vertraging hebben. Je kunt het als volgt doen:

import time

for i in [ .5, .1, 1, 2]:
   print("Waiting for %s" % i , end='')
   print(" seconds")
   time.sleep(i)

Dit zal de volgende output geven:

Waiting for 0.5 seconds
Waiting for 0.1 seconds
Waiting for 1 seconds
Waiting for 2 seconds

Dramatisch afdrukken met behulp van sleep()

Je moet mogelijk een bericht op dramatische wijze afdrukken, je kunt het als volgt doen:

 # importeer de tijdmodule 
import time
message = "Hi!!! I am trying to create suspense"

for i in message:
    # elk teken van het bericht afdrukken 
   print(i)
   time.sleep(0.3)

Als je de bovenstaande code uitvoert, zul je zien dat na het afdrukken van elk teken van het bericht het enige tijd in beslag neemt, wat dramatisch lijkt.

Python draad slaap

De Python time sleep() functie is een zeer belangrijke methode voor multithreading. Hieronder staat een eenvoudig voorbeeld dat laat zien dat de python time sleep functie de uitvoering van de huidige thread alleen stopt bij multithreaded programmering.

import time
from threading import Thread


class Worker(Thread):
    def run(self):
        for x in range(0, 11):
            print(x)
            time.sleep(1)


class Waiter(Thread):
    def run(self):
        for x in range(100, 103):
            print(x)
            time.sleep(5)


print("Staring Worker Thread")
Worker().start()
print("Starting Waiter Thread")
Waiter().start()
print("Done")

De onderstaande afbeelding toont de output geproduceerd door het bovenstaande voorbeeld van python draad slaap. Uit de output is het heel duidelijk dat alleen de threads worden gestopt met uitvoeren en niet het hele programma door de python time sleep functie. Dat is alles over de python time sleep functie of python sleep functie. Referentie: StackOverFlow Bericht, API Doc

Source:
https://www.digitalocean.com/community/tutorials/python-time-sleep