Python sleep: Cómo detener programas temporalmente
Python sleep es una función que permite detener un programa durante un tiempo y luego permitir que continúe sin alteraciones. Con este sencillo comando puedes utilizar este lenguaje de programación de internet para, por ejemplo, programar publicaciones, mostrar la hora, iniciar una cuenta atrás o poner una alarma.
- Registros DNS
- Administración SSL
- Documentación API
¿Qué es Python sleep?
Con Python sleep puedes pausar un programa durante un tiempo determinado y hacer que siga ejecutándose automáticamente una vez transcurrido el periodo de espera. Con él, los usuarios pueden, por ejemplo, sacar tiempo para leerse unas instrucciones, o crear su propia cuenta atrás digital. Además, Python sleep puede combinarse con un módulo de tiempo. Aunque la estructura y el uso de sleep son relativamente sencillos, en combinación con sentencias Python if else, bucles while de Python o bucles for de Python, la función permite incluso realizar procesos complicados. Salvo la función de pausa, sleep no interfiere con el programa, a diferencia de Python break y continue.
Sintaxis y función de Python sleep
La sintaxis de Python sleep siempre es la siguiente:
t denota el tiempo de espera estimado y en la mayoría de los casos se expresa en segundos.
Python sleep suele interrumpir una secuencia de eventos establecida. Así, primero se introduce un comando, luego se añade mediante Python sleep una pausa con duración determinada y finalmente se indica qué acción debe ejecutarse después de la pausa.
Basta un ejemplo sencillo para ilustrarlo. El primer paso es emitir una frase con esa estructura. Luego, el programa se detiene durante cinco segundos y se emite una segunda frase. Este es el código:
Otra opción es asignar a time.sleep un valor x y fijar así un tiempo de espera. Para una pausa de exactamente un minuto, el código debe tener este aspecto:
También puedes introducir el tiempo de espera en milisegundos. Para ello, basta con dividir el dato entre mil, que quedaría de la siguiente manera:
Crear un reloj digital con Python sleep
Con un bucle while convencional, uno de los básicos de la mayoría de tutoriales de Python, puedes crear un reloj digital con Python sleep y darle un uso totalmente distinto a esta función. Para ello, se pregunta la hora actual, que se emite en formato hora, minutos y segundos. Con Python sleep, se establece un retardo de exactamente un segundo y se ordena al programa que vuelva a ejecutar el bucle. Si dejas que el bucle continúe sin que finalice a una hora determinada, puedes crear un reloj digital preciso en solo unos pasos. Este es el código:
En este caso, se emitiría de salida la hora británica y tendría el siguiente aspecto:
Si no se establece una hora final, la entrada de tiempo seguirá ejecutándose de forma continua. Para cerrar el bucle infinito, presiona la combinación de teclas [Ctrl] + [C].
Crear un temporizador
Python sleep también es un excelente temporizador. Introduce el siguiente código para configurar, por ejemplo, cinco minutos:
Se mostrará algo similar a esto:
Entre ambos hay exactamente 300 segundos, es decir, cinco minutos.
Cuenta atrás con Python sleep
También puedes usar la función sleep de Python para hacer una cuenta regresiva. En el siguiente ejemplo se crea una cuenta atrás que va de 10 a 0. El mecanismo es similar al del ejemplo anterior, pero esta vez se utiliza un bucle for.
Si ahora ejecutas el programa, este contará del 10 al 1 en orden descendente. Sleep emite un nuevo valor cada segundo. Cuando el bucle llega al 1, aparece el mensaje “¡Se acabó!” en lugar del 0.
Python sleep y Multithreading
Con Python sleep también puedes ejecutar varios procesos al mismo tiempo, es decir, multithreading. En este ejemplo de dos hilos distintos con estructuras de bucles for se pide emitir dos frases. Con Python sleep puedes controlar cuándo se ejecuta cada comando y así dar un orden predeterminado al programa. Funciona de la siguiente manera: