Cómo hacer un programa de cuenta regresiva en Python

Tabla de contenido:

Cómo hacer un programa de cuenta regresiva en Python
Cómo hacer un programa de cuenta regresiva en Python

Video: Cómo hacer un programa de cuenta regresiva en Python

Video: Cómo hacer un programa de cuenta regresiva en Python
Video: Aprende Python en 15 Minutos 📗 2024, Mayo
Anonim

Este artículo le mostrará cómo crear un programa de cuenta atrás simple con el lenguaje de programación Python. Este es un buen ejercicio para un principiante que quiere aprender sobre los bucles while y los módulos. Sin embargo, ya debe estar familiarizado con los conceptos básicos de Python, como las variables, para comprenderlo.

También necesita tener Python 3 instalado. Si aún no lo ha hecho, antes de continuar, siga las instrucciones de Cómo instalar Python.

Pasos

4582307 1
4582307 1

Paso 1. Abra su editor de texto o IDE

En Windows, la opción más sencilla es usar IDLE, que se instala junto con Python.

4582307 2
4582307 2

Paso 2. Abra un archivo nuevo

En muchos editores de texto, puede hacer esto yendo al menú de archivo y haciendo clic en Nueva ventana o simplemente presionando Ctrl + N.

4582307 3
4582307 3

Paso 3. Importe el

tiempo

módulo.

los

tiempo

contiene muchas funciones de Python relacionadas con el tiempo, por ejemplo, obtener la hora actual o esperar una cantidad de tiempo específica (este último es lo que necesitará para este programa). Para importar el módulo, escriba:

tiempo de importación

4582307 4
4582307 4

Paso 4. Defina una función de cuenta atrás

Puede darle a la función el nombre que desee, pero normalmente debería utilizar algo descriptivo. En este caso, podría llamarlo cuenta regresiva (). Agrega el siguiente código:

def cuenta regresiva (t):

4582307 5
4582307 5

Paso 5. Escribe un ciclo while

Un ciclo while repite el código dentro de él siempre que su condición sea verdadera. En este caso, desea que la cuenta regresiva continúe hasta que el número llegue a 0. Por lo tanto, debe escribir:

mientras t> 0:

  • Observe los espacios al principio de la línea. Estos le dicen a Python que esta línea de código es parte de la definición del

    cuenta regresiva

  • función, y no solo un código debajo de ella. Puede usar cualquier cantidad de espacios, pero debe usar la misma cantidad antes de cualquier línea que desee sangrar una vez.
  • Necesitará sangrar las siguientes líneas de código dos veces, porque son parte de la definición de la función y parte del ciclo while. Esto se hace utilizando el doble de espacios.
4582307 6
4582307 6

Paso 6. Imprima el número actual

Esto no significa usar una impresora para plasmarlo en papel, "imprimir" es una palabra que significa "mostrar en la pantalla". Esto le permitirá ver cuánto ha progresado la cuenta atrás.

imprimir (t)

4582307 7
4582307 7

Paso 7. Cuente el número

Que sea 1 menos. Esto se hace con el siguiente código:

t = t - 1

Alternativamente, si no desea escribir tanto, puede escribir:

t - = 1

4582307 8
4582307 8

Paso 8. Haga que el programa espere un segundo

De lo contrario, la cuenta regresiva sería demasiado rápida y la cuenta regresiva se terminaría antes de que pudieras leerla. Para esperar un segundo, use el

dormir

función de la

tiempo

módulo que había importado anteriormente:

hora de dormir (1)

4582307 9
4582307 9

Paso 9. Haga algo cuando la cuenta regresiva llegue a cero

Para imprimir "BLAST OFF!" cuando la cuenta regresiva llegue a cero, agregue esta línea:

imprimir ("BLAST OFF!")

Tenga en cuenta que esta línea solo tiene sangría una vez. Esto se debe a que ya no forma parte del ciclo while. Este código solo se ejecuta después de que finaliza el ciclo while.

4582307 10
4582307 10

Paso 10. Pregunte al usuario desde qué número iniciar la cuenta atrás

Esto le dará a su programa cierta flexibilidad, en lugar de contar siempre desde el mismo número.

  • Imprime la pregunta al usuario. Necesitan saber lo que se supone que deben ingresar.

    print ("¿Cuántos segundos para la cuenta regresiva? Ingresa un número entero:")

  • Obtenga la respuesta. Almacene la respuesta en una variable para que pueda hacer algo con ella más tarde.

    segundos = entrada ()

  • Si bien la respuesta del usuario no es un número entero, pídale al usuario otro número entero. Puede hacer esto con un bucle while. Si la primera respuesta ya es un número entero, el programa no entrará en el ciclo y simplemente procederá con el siguiente código.

    while not seconds.isdigit (): print ("¡Eso no era un número entero! Ingresa un número entero:") segundos = input ()

  • Ahora puede estar seguro de que el usuario ingresó un número entero. Sin embargo, todavía se almacena dentro de una cadena (

    aporte()

    siempre devuelve una cadena, porque no puede saber si el usuario ingresará texto o números). Necesitas convertirlo en un número entero:

    segundos = int (segundos)

    Si hubiera intentado convertir una cadena cuyo contenido no es un número entero en un número entero, obtendría un error. Esta es la razón por la que el programa verificó primero si la respuesta era en realidad un número entero.

4582307 11
4582307 11

Paso 11. Llame al

cuenta regresiva()

función.

Lo había definido previamente, pero definir una función no hace lo que está escrito en su interior. Para ejecutar realmente el código de cuenta regresiva, llame al

cuenta regresiva()

función con el número de segundos que el usuario ingresó:

cuenta regresiva (segundos)

4582307 12
4582307 12

Paso 12. Verifique su código terminado

Debe tener un aspecto como este:

import time def countdown (t): while t> 0: print (t) t - = 1 time.sleep (1) print ("BLAST OFF!") print ("¿Cuántos segundos para la cuenta regresiva? Ingresa un número entero:") segundos = input () mientras que no segundos.isdigit (): print ("¡Eso no era un entero! Ingresa un entero:") segundos = input () segundos = int (segundos) cuenta atrás (segundos)

  • Las líneas vacías solo están ahí para facilitar la lectura del código. No son obligatorios y Python realmente los ignora.
  • Puede escribir t = t - 1 en lugar de t - = 1 si lo prefiere.

Recomendado: