Hay momentos en los que deseas que tu programa se ejecute de inmediato. Pero también habrá ocasiones donde en los que deseas retrasar la ejecución de ciertas partes del código.
Aquí es donde el módulo time
de Python nos puede ser útil. time
es parte de la biblioteca estándar de Python, y contiene la útil función sleep()
que suspende o detiene un programa durante un número de determinado de segundos:
import time
print('ejecucion inmediata')
for letra in '¡hola, mundo!':
time.sleep(2) # espera 2 segundos entre cada print()
print(letra)
Resultado:
ejecucion inmediata
#Cada caracter se imprimira en patalla dspues de 2 segundos de espera
¡
h
o
l
a
,
m
u
n
d
o
!
Los números de punto flotante (floating) también pueden dar como argumento para sleep()
para tiempos más específicos. Por ejemplo, el siguiente código retrasará cada instrucción print()
durante medio segundo ó 500 ms:
import time
for letra in 'usando números flotantes':
time.sleep(0.5) # añade un retraso de 500 ms
print(letra)
Resultado:
#Cada caracter se imprimira en pantalla despues de un retraso de 500 ms
u
s
a
n
d
o
n
ú
m
e
r
o
s
f
l
o
t
a
n
t
e
s
También es posible generar retrasos con diferentes valores. En este caso puedes iterar sobre una lista con diferentes retrasos de tiempo con un bucle for
:
import time
for i in [.5, 1, 2, 3, 4]:
time.sleep(i)
print(f"Retraso de {i} segundos")
Resultado:
Retraso de .5 segundos
Retraso de 1 segundos
Retraso de 2 segundos
Retraso de 3 segundos
Retraso de 4 segundos
Como pudiste ver, hay mucho que se puede hacer con la función sleep()
. Ahora es tu turno de utilizar sleep()
es tus propios programas - no esperes más.
Más información:
Documentación de módulo de tiempo sobre la función sleep.
Más tutoriales de Python:
Traducido del artículo - How to Make a Time Delay in Python Using the sleep() Function