Dormire in millisecondi in Python

Muhammad Waiz Khan 30 gennaio 2023
  1. Python Sleep usando il metodo time.sleep()
  2. Python Sleep Utilizzando il metodo threading.Timer()
Dormire in millisecondi in Python

In questo tutorial, esamineremo vari metodi per mettere in pausa o sospendere l’esecuzione di un programma per un determinato periodo di tempo in Python. Supponiamo di voler mettere in pausa l’esecuzione del programma per alcuni secondi per consentire all’utente di leggere le istruzioni sul passaggio successivo del programma. Abbiamo bisogno di un metodo per dire al programma di andare a dormire per un numero specifico di secondi o millisecondi. Discuteremo anche un metodo per fare in modo che il programma chiami una funzione fornita dopo un intervallo di tempo specifico senza mettere in pausa o sospendere l’esecuzione del programma

Possiamo usare i seguenti metodi per mettere in pausa o sospendere l’esecuzione del programma per un dato periodo di tempo in Python.

Python Sleep usando il metodo time.sleep()

Il metodo time.sleep(secs) mette in pausa o sospende l’esecuzione del thread chiamante per il numero di secondi fornito nell’argomento secs. Pertanto, abbiamo bisogno di chiamare il metodo time.sleep() per fare in modo che il programma vada a dormire per un tempo specifico.

Il codice di esempio sotto mostra come usare il metodo time.sleep() per far dormire il programma per un dato numero di secondi.

import time

time.sleep(1.5)
print("1.5 seconds have passed")

Per mettere in pausa il programma per millisecondi, dovremo dividere l’input per 1000, mostrato nel codice di esempio seguente:

import time

time.sleep(400 / 1000)
print("400 milliseconds have passed")

Python Sleep Utilizzando il metodo threading.Timer()

Il metodo threading.Timer(interval, function, args, kwargs) attende un tempo pari a interval secondi e poi chiama la function con argomenti args e argomenti parola chiave kwargs se forniti.

Se vogliamo che il programma attenda un tempo specifico e poi chiami la funzione, il metodo threading.Timer() sarà utile. Il codice di esempio sotto mostra come usare il metodo threading.Timer() per far aspettare al programma interval secondi prima di eseguire qualche operazione.

from threading import Timer


def nextfunction():
    print("Next function is called!")


t = Timer(0.5, nextfunction)
t.start()
Nota
threading.Timer() non sospende l’esecuzione del programma, crea un thread timer che chiama la funzione dopo che è trascorso l’interval fornito.

Articolo correlato - Python Time