Usando il metodo di sonno Python

Usando il metodo di sonno Python
Se si desidera impostare un ritardo prima di eseguire qualsiasi script, è possibile utilizzare il sonno() funzione che è integrata in Python. Questo metodo esiste sotto il tempo modulo. Generalmente, la funzione Sleep () viene utilizzata per fermare l'esecuzione del programma per il periodo di tempo dato (in secondi). Ad esempio, se si scarica un file da una posizione utilizzando uno script che potrebbe richiedere un determinato periodo di tempo, è possibile utilizzare il metodo Sleep () per informare l'utente di attendere. Questo tutorial ti mostrerà alcuni dei diversi usi della funzione Sleep () in Python 3.

Sintassi

L'esempio seguente mostra il semplice utilizzo della funzione sleep () per fermare l'esecuzione del programma nel mezzo dello script per un determinato periodo. Lo script leggerà e stampa il valore temporale del sistema corrente, attendi 5 secondi nella funzione sleep () e leggi e stampano nuovamente il tempo di sistema corrente. Qui, le funzioni locali () e time () vengono utilizzate per la lettura della data e ora del sistema e la funzione strftime () viene utilizzata per stampare il tempo formattato.

#!/usr/bin/env python3
# Modulo di importazione
tempo di importazione
# Leggi la data e l'ora correnti
ora = tempo.tempo locale (ora.tempo())
# Stampa l'ora di inizio
Stampa (tempo.strftime ("Il tempo di inizio:%H:%m:%s", ora))
# Aspetta 5 secondi
Stampa ("Aspettando 5 secondi ...")
tempo.sonno (5)
# Leggi la data e l'ora correnti
ora = tempo.tempo locale (ora.tempo())
# Stampa l'ora di fine
Stampa (tempo.strftime ("Il tempo di fine:%h:%m:%s", ora))

Produzione

Il seguente output apparirà dopo aver eseguito lo script sopra. L'output mostra che la durata tra l'ora di inizio e l'orario di fine è di 5 secondi, usando la funzione sleep ().

Esempio 2: crea un contatore del tempo usando sleep ()

L'esempio seguente mostra come creare facilmente un contatore del tempo tramite il metodo Sleep (). Lo script impiegherà un numero in secondi per inizializzare la variabile di contatore del tempo. Qui vengono importati tre moduli. IL appuntamento Il modulo viene importato per impostare il valore temporale iniziale. IL tempo Il modulo viene importato per utilizzare la funzione sleep (). IL sys Il modulo viene utilizzato per terminare l'infinito durante il ciclo quando il valore contatore è uguale al valore del contatore del tempo. Nello script vengono utilizzate quattro variabili per inizializzare le variabili ora, minuto, seconda e contatta per impostare l'orario di inizio del contatore del tempo. Qui, la funzione Sleep () aspetterà un secondo in ogni iterazione del loop e quindi stamperà il valore del contatore del tempo.

#!/usr/bin/env python3
# Importa modulo DateTime
Importa DateTime
# Modulo di importazione
tempo di importazione
# Importa modulo sys
Import sys
# Prendi il numero di secondi per contare
timer = int (input ("Imposta il valore contatore in secondi:")
# Inizializza il tempo e il valore contabile a 0
ora = minuto = secondo = contatore = 0
# Stampa il valore del timer iniziale
Stampa (DateTime.tempo (ora, minuto, secondo))
Tentativo:
# Definisci Infinite Loop
mentre è vero:
# Ritardo per 1 secondo
tempo.sonno (1)
# Contatore incremento di 1
contatore = contatore + 1
# Incremento secondo per 1
secondo = secondo + 1
# Stampa il valore del timer corrente
Stampa (DateTime.tempo (ora, minuto, secondo))
# Imposta il secondo valore su 0 quando il valore è più di 60
Se secondo> 60:
minuto = minuto + 1
secondo = 0
# Imposta il valore minuto su 0 quando il valore è più di 60
Se minuto> 60:
ora = ora + 1
minuto = 0
# Termina il ciclo quando il valore contatore è uguale al valore del timer
Se contatore == timer:
stampa ("tempo finito.")
rottura
Tranne la tastiera interrupt:
# Termina lo script quando viene premuto Ctrl+C
sys.Uscita

Produzione

Il seguente output apparirà dopo aver eseguito lo script.

Esempio 3: stampare ogni carattere di una stringa con un ritardo

Se si desidera visualizzare ogni carattere di un testo con qualche ritardo nell'output, è possibile applicare la funzione sleep () nello script. Un'attività simile è mostrata nel seguente script. Qui, un valore di testo viene preso come input. Ogni carattere del testo viene iterato usando il ciclo e la funzione attende 0.4 secondi prima della stampa.

#!/usr/bin/env python3
# Modulo di importazione
tempo di importazione
# Prendi un valore di stringa
nome = input ("Immettere il tuo nome:")
# Itera il ciclo per leggere ogni carattere dalla stringa
Per Val in nome:
# Stampa ogni personaggio senza nuova linea
Stampa (val, end = ")
# Aspetta 0.4 secondi dopo la stampa di ogni personaggio
tempo.dormire (0.4)

Produzione

Esegui lo script. Capirai correttamente l'output dopo aver eseguito lo script.

Esempio 4: Uso del sonno () nello script multi-thread

L'esempio seguente mostra l'uso della funzione sleep () nello script python multi-thread. Qui vengono importati due moduli: il modulo temporale per l'utilizzo della funzione sleep () e il modulo di threading per la creazione di più thread. Nello script vengono utilizzate due funzioni personalizzate. Un messaggio di testo verrà stampato e attenderà 0.5 secondi per tre volte all'interno del loop quando inizia il primo thread. Un messaggio di testo verrà stampato e attenderà 1 secondo per quattro volte all'interno del loop quando inizia il secondo thread.

#!/usr/bin/env python3
# Modulo di importazione
tempo di importazione
# Importa il modulo di threading
threading di importazione
# Definisci la prima funzione thread
def prn_message_1 ():
per n nell'intervallo (3):
Stampa ("Print thread 1 messaggio")
tempo.dormire (0.5)
# Definisci la funzione del secondo thread
def prn_message_2 ():
per n nell'intervallo (4):
Stampa ("Print Thread 2 Messaggio")
tempo.sonno (1)
# Imposta la prima funzione thread
thread1 = threading.Thread (target = prn_message_1)
# Avvia la prima funzione thread
Discussione1.inizio()
# Imposta la funzione del secondo thread
thread2 = threading.Thread (target = prn_message_2)
# Avvia la funzione del secondo thread
Discussione2.inizio()

Produzione

Il seguente output apparirà dopo aver eseguito lo script. Dopo aver iniziato il primo thread, il secondo thread inizia e attendi fino al completamento per 1 secondo. Durante questo periodo, il ciclo del primo thread viene completato le ultime due iterazioni. Le ultime tre uscite sono apparse per il ciclo del secondo thread.

Conclusione

La funzione Sleep () viene utilizzata per risolvere molti diversi tipi di problemi legati al tempo in Python. Vari usi di questo metodo sono spiegati utilizzando esempi molto semplici qui per aiutare il lettore a conoscere le funzioni di questo strumento. Credo che tu o qualsiasi altro utente di Python sarai in grado di utilizzare questo metodo correttamente dopo aver praticato gli esempi inclusi in questo tutorial.