Tarea 3: Crear una función de temporizador de página web
Ahora que tienes algo de práctica en la construcción de bucles while, es hora de asumir el proyecto que te pidieron que completara para el teatro. Esta tarea utiliza una función llamada sleep() del módulo de tiempo. Siempre que se ejecuta sleep(n), el programa se detendrá durante n segundos. Ejecute la siguiente celda como ejemplo ilustrativo para ayudarle a comprender.
>>from time import sleep # se importa la función sleep desde el modulo tiempo
>>n = 0
>> def temporizador(n):
>> while n >= 0:
>> print(n)
>> sleep(1) # La ejecución de la instrucción se pausa por un segundo
>> n = n - 1 # se realiza un decremento en la variable de control del bucle while
>>temporizador(3)
3
2
1
0
Para los propósitos de esta tarea, suponga que 1 segundo = 1 minuto, por lo que la celda anterior representaría una cuenta regresiva de 3 minutos.
Aplicación practica
La sala de cine ha implementado las reservas online a través de su página web. Desde la página de selección de asiento, los clientes tienen un tiempo limitado para realizar su selección.
Debes escribir una función que haga una cuenta regresiva y recuerde al usuario que tiene un tiempo limitado para hacer una selección. Cuando el tiempo expira, debe imprimir un mensaje de tiempo de espera. Cree una instancia de una variable llamada mins y asígnele un valor inicial de 10.
Escriba un bucle while que utilice la función sleep() y disminuya mins desde 10 minutos. Para cada minuto: Imprima cuántos minutos quedan como un número entero. PERO: Si quedan 5 minutos, imprime ¡Haz tu reserva pronto! Quedan 5 minutos. en lugar del número entero. Si quedan 2 minutos, imprime ¡No pierdas tus asientos! Quedan 2 minutos. en lugar del número entero. Cuando queden cero minutos, imprima Se agotó el tiempo de espera del usuario. en lugar del número entero.
>>from time import sleep
>>mins = 0
>>def cuenta_regresiva(mins):
"""
una función que haga una cuenta regresiva y recuerde al usuario que tiene un tiempo
limitado para realizar su selección.
cuando el tiempo expira debe imprimir un mensaje de tiempo de espera.
El parámetro de la función es mins, que representa los minutos que
tiene el usuario para realizar su reserva.
"""
>> while mins >= 0:
>> sleep(1) # se configura el tiempo de espera en 1 seg
>> if mins == 5:
>> print('Haz tu reserva pronto!, quedan 5 minutos')
>> elif mins == 2:
>> print('No pierdas tus asientos!, quedan 2 minutos')
>> elif mins == 0:
>> print('Se agotó el tiempo de espera del usuario')
>> else:
>> print(int(mins)) # se muestra por pantalla el valor de mins en cada iteracion como entero
>> mins -=1 # se disminuye mins en una unidad para la siguiente iteracion
10
9
8
7
6
Haz tu reserva pronto!, quedan 5 minutos
4
3
No pierdas tus asientos!, quedan 2 minutos
1
Se agotó el tiempo de espera del usuario