Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Cuenta regresiva

Se ha realizado modificaciones al código básico con la finalidad de dar mayor vistosidad al resultado final, por lo que se han realizado los siguientes ajustes adicionales:

  1. Se ha importado la libreria time, la que es necesaria para mostrar cada x tiempo (en este caso cada 0,5 ms) un punto suspensivo
  2. Se ha importado el módulo sys, para garantizar el uso adecuado de flush.True
    Los demás ajustes se reflejan comentados en el código
import time
import sys
cuenta = 10
#Se declaran la variables que indica el tiempo que demora en mostrar cada punto
pausa_seg = 0.5
#Se declara la variable que indica la cantidad de puntos que se mostrarán
puntos = 3
for i in range(cuenta, 0, -1):
    #Se comnpruba su el número es par o impar
    if i % 2 == 0:
        print(f'Faltan solo {i} segundos - ¡No pierdas la oportunidad!')
    else:
        print(f'La cuenta continúa: {i} segundos restantes.')
    #Se muestran puntos suspensivos cada 0.5 segundos
    for h in range(puntos):
        #Se imprime un punto sin salto de línea
        print('.', end='', flush=True)
        #Se pausa la ejecución por el tiempo indicado en pausa_seg
        time.sleep(pausa_seg)
print('¡Aprovecha la promoción ahora!')
1 respuesta

Hola Carlos, espero que estés bien

¡Parece que estás haciendo un gran trabajo con tu cuenta regresiva! Tu código está bien estructurado y cumple con los requisitos del ejercicio. Has incorporado la funcionalidad de mostrar puntos suspensivos y pausas entre los mensajes, lo cual añade un toque visual interesante.

Aquí hay algunas observaciones y sugerencias que podrían ayudarte:

  1. Uso de flush=True: Veo que has importado el módulo sys, pero en tu código no es necesario, ya que el uso de flush=True en print ya se encarga de vaciar el buffer automáticamente. Así que podrías eliminar la importación de sys si no lo usas en otra parte del código.

  2. Pausa entre puntos: La pausa que has configurado es de 0.5 segundos, lo cual es correcto para mostrar los puntos suspensivos de manera gradual. Asegúrate de que el valor de pausa_seg sea el que deseas para el efecto visual.

  3. Ortografía en comentarios: Hay un pequeño error de escritura en los comentarios, como "comnpruba" en lugar de "comprueba". Aunque no afecta la ejecución del código, es una buena práctica mantener los comentarios claros y sin errores.

  4. Claridad del código: Tu código es bastante claro y los comentarios ayudan a entender cada parte. Asegúrate de que todos los comentarios estén actualizados y reflejen lo que el código realmente hace.

Aquí tienes un ejemplo de cómo quedaría tu código con las pequeñas mejoras sugeridas:

import time

cuenta = 10
# Se declara la variable que indica el tiempo que demora en mostrar cada punto
pausa_seg = 0.5
# Se declara la variable que indica la cantidad de puntos que se mostrarán
puntos = 3

for i in range(cuenta, 0, -1):
    # Se comprueba si el número es par o impar
    if i % 2 == 0:
        print(f'Faltan solo {i} segundos - ¡No pierdas la oportunidad!')
    else:
        print(f'La cuenta continúa: {i} segundos restantes.')
    # Se muestran puntos suspensivos cada 0.5 segundos
    for h in range(puntos):
        # Se imprime un punto sin salto de línea
        print('.', end='', flush=True)
        # Se pausa la ejecución por el tiempo indicado en pausa_seg
        time.sleep(pausa_seg)
print('¡Aprovecha la promoción ahora!')

Espero que estas sugerencias te sean útiles. ¡Sigue adelante con tus estudios de Python y sigue compartiendo tus logros!

Espero haber ayudado y buenos estudios!