In Desarrollo Última actualizaciónated:
Comparte en:
Software de Jira es la herramienta de gestión de proyectos número uno utilizada por equipos ágiles para planificar, rastrear, lanzar y respaldar software excelente.

Ya debería haber adivinado el contenido de este artículo. Y probablemente debería estar familiarizado con adivinar números y buscar una manera de construirlo usando Python.

Aprendamos a crearate un juego de adivinanzas numéricas desde cero.

Juego de adivinanzas de números

El juego es sencillo. El usuario tiene que adivinar el género aleatoriamente.ated número que se encuentra entre el rango de 1 a 100. Eso es.

¿Es el juego así de simple?

Sí lo es.

Pero hay una cosa que debemos proporcionar a los usuarios para que adivinen el número. Eso son pistas. Tenemos que proporcionar un mensaje al usuario que diga que el número adivinado actual es menor que el número correcto o que el número adivinado actual es mayor.ater que el número correcto. Para que los usuarios sepan en qué dirección tienen que ir.

Podemos hacerlo más emocionante agregando extra características como el número máximo de posibilidades de adivinar, aumentar el rango, configurar un temporizador, etc.

Es obligatorio crear el juego de trabajo básico. Después, podemos agregar más funciones como se discutió. Entonces, vamos a crearate la versión básica del juego en esta sección. Y luego pasaremos a agregar nuevas funciones.

Quiero que intentes crear el juego sin copiar el código a ciegas. Entonces, primero voy a explicar el algoritmo. Le ayudará a codificar suself o comprender el código rápidamente.

Veamos el algoritmo para crearate el juego de adivinanzas de números.

Algoritmo

Asegúrese de comprender el algoritmo antes de pasar a la parte de codificación.

  • Defina el rango de los números. De forma predeterminada, es 1-100, pero puede cambiarlo como prefiera.
  • eneroate un número entero aleatorio del rango anterior (1-100).
  • Inicie el juego mostrando al usuario un mensaje que diga "Adivina el número de X a Y". puedes actualizarate el mensaje como desees.
  • Inicializar una variable para 0 para contar el número total de oportunidades que ha tenido el usuario para adivinar el número correctamente.
  • Escribe un bucle infinito.
    • Pídale al usuario que adivine el número.
    • Si el número adivinado actual es igual al generado aleatoriamenteated número, entonces felicidadesate al usuario con un mensaje como desee. Un ejemplo sería “-> ¡Hurra! ¡Lo tienes en 5 pasos! ”.
    • Rompe el círculo después de felicitar al usuario.
    • Si el número adivinado actual es menor que el generado aleatoriamenteated número, luego envíe un mensaje al usuario diciendo "-> Tu número es menor que el número aleatorio" o un mensaje personalizado con el mismo significado.
    • Si el número adivinado actual es greater que el gene aleatorioated número, luego envíe un mensaje al usuario diciendo “-> Tu número es greater que el número aleatorio” o una costumbre con el mismo significado.
    • finalally, incrementa las posibilidades que el usuario ha tenido de adivinar.

Habría tenido un código en su mente después de ver el algoritmo. No se preocupe incluso si no obtiene el código completo. Pero asegúrese de comprender el algoritmo anterior.

Es hora de ponernos manos a la obra con el código. Ingrese al código sin más preámbulos.

Código

¿Intentaste escribir el código?

En caso afirmativo y completarlo. Es genial. Consulte el código y entiéndalo para agregar más perspectivas a su conocimiento.

Don’t worry even if you didn’t write the code. See the below code and understand it. Try to tweak and write it in your own way for better understanding.

Entonces, veamos el código.

import random


class NumberGuessingGame:

    def __init__(self):
        ## define the range
        self.LOWER = 1
        self.HIGHER = 100

    ## method to generate the random number
    def get_random_number(self):
        return random.randint(self.LOWER, self.HIGHER)

    ## game start method
    def start(self):
        ## generating the random number
        random_number = self.get_random_number()

        print(
            f"Guess the randomly generated number from {self.LOWER} to {self.HIGHER}")

        ## heart of the game
        chances = 0
        while True:
            user_number = int(input("Enter the guessed number: "))
            if user_number == random_number:
                print(
                    f"-> Hurray! You got it in {chances + 1} step{'s' if chances > 1 else ''}!")
                break
            elif user_number < random_number:
                print("-> Your number is less than the random number")
            else:
                print("-> Your number is greater than the random number")
            chances += 1

## instantiating and starting the game
numberGuessingGame = NumberGuessingGame()
numberGuessingGame.start()

Hay algunas cosas que comprende del código.

  • El rango se define dentro del __init__ método para que se pueda utilizar en todos los métodos de la clase.
  • Podemos cambiarlo fácilmente en un lugar que cambia en la aplicación en consecuencia.
  • Hay una separaciónate método para generarate el número aleatorio que sigue el principio de “separarate las preocupaciones". Aquí, nuestro método tiene poco código, pero podría aumentar en el futuro.
  • finalally, hemos usado la clase para que cada método que sea related al juego residirá dentro de él. Y se puede reutilizar fácilmente en otras aplicaciones.

Todos los puntos que se discuten anteriormente son related a escribir código limpio. Deberíamos intentar escribir un código limpio que usted entienda incluso después de algunos años.

La salida de muestra del juego se ve de la siguiente manera.

$ python number_guessing_game.py 
Guess the randomly generated number from 1 to 100
Enter the guessed number: 50
-> Your number is less than the random number
Enter the guessed number: 75
-> Your number is less than the random number
Enter the guessed number: 90
-> Your number is greater than the random number
Enter the guessed number: 85
-> Your number is greater than the random number
Enter the guessed number: 80
-> Hurray! You got it in 5 steps!

Supongo que tienes Python instalado para probar el código anterior.

Extra Feature

Vamos a sumar el número máximo de posibilidades de que un usuario adivine el número. Si el usuario no adivina el número dentro del número de posibilidades, el usuario pierde.

¿Cómo lo agregamos?

Es un simple paso de dos process. Veamos los pasos.

  • Defina el número máximo de posibilidades de que el usuario adivine el número.
  • Compruebe si el usuario tiene posibilidades o no antes de solicitar la entrada. Y finalizar el juego si el usuario no tiene oportunidades.

El siguiente código adicional completará la función.

  • Agregue el siguiente código dentro del __init__ método.
self.MAX_CHANCES = 10
  • Agregue la siguiente condición antes de que el usuario ingrese la siguiente suposición.
if chances == self.MAX_CHANCES:
                print("-> Phew! You lost the game. You are out of chances")

Ahora, prueba el juego sin adivinar el número correcto. Debería ver una salida similar a la siguiente.

$ python number_guessing_game.py 
Guess the randomly generated number from 1 to 100. You have 10 chances to guess.
Enter the guessed number: 1
-> Your number is less than the random number
Enter the guessed number: 2
-> Your number is less than the random number
Enter the guessed number: 3
-> Your number is less than the random number
Enter the guessed number: 4
-> Your number is less than the random number
Enter the guessed number: 5
-> Your number is less than the random number
Enter the guessed number: 6
-> Your number is less than the random number
Enter the guessed number: 7
-> Your number is less than the random number
Enter the guessed number: 8
-> Your number is less than the random number
Enter the guessed number: 9
-> Your number is less than the random number
Enter the guessed number: 10
-> Your number is less than the random number
-> Phew! You lost the game. You are out of chances

¡Viva! hemos agregado un extra característica de nuestro juego. Aunque no es el final. Puede agregar algunas funciones más para hacerlo más atractivo para los usuarios. Es tu momento ahora. Adelante y hazlo más beautiful :).

Para Concluir

tenemos createUn sencillo juego de adivinar números. Ahora es tu turno de pensar en los juegos que jugabas cuando eras joven. Hazlos usando lenguaje de programación y comparte con tus amigos. Podemos digitalizar la mayoría de los juegos de nuestra infancia.

A continuación, explora Python IDE y compilador en línea para ejecutar código Python.

Codificación feliz 🙂

Si no te cansas de los juegos de palabras virales, aquí tienes cómo hacerlo mejor en Wordle.

Comparte en:
  • Hafeezul Kareem Shaik
    Autor
    Hafeez es desarrollador y le encanta compartir su conocimiento de Python y los lenguajes de desarrollo emergentes.

Gracias a nuestros patrocinadores

Más lecturas interesantes sobre el desarrollo

Impulse su negocio

Algunas de las herramientas y servicios para ayudar a su negocio grow.
  • La herramienta de conversión de texto a voz que utiliza IA para generarate Voces realistas parecidas a las humanas.

    Intente Murf AI
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.

    Prueba Brightdata
  • Monday.com es un sistema operativo de trabajo todo en uno para ayudarlo a administrar proyectos, tareas, trabajo, ventas, CRM, operaciones, workflows, y más.

    Intente Monday
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.

    Intente Intruder