Creo que una gran estrategia para aprender un lenguaje es haciendo pequeños proyectos, entre estos, los videojuegos pueden ser muy entretenidos de codificar, además de que mejoras tu lógica y tu conocimiento del lenguaje. A continuación te muestro un pequeño juego para consola de Preguntas y Respuesta para practicar cositas básicas de Python.
Primero imprimiremos en consola el nombre de nuestro juego además de dar una prequeña descripción del mismo.
print('Quizthon: Capitales del mundo')
Definiremos dos varibles: el primero es para acumular el puntaje obtenido por cada pregunta correcta y el segundo para el numero de preguntas que haremos al jugador, en esta ocasión serán 3, pero luego podrás modificar el código para que sean más o menos si lo prefieres.
puntaje = 0num_preguntas = 3
Le preguntaremos al usuario si ya esta listo para jugar y la respueta lo almacenaremos en una variable. Con input podemos imprimir un string y a su vez almacenar lo que el jugador ingrese mediante el teclado.
respuesta = input(f'Serán {num_preguntas} preguntas ¿Preparado para jugar? (si/no) :')
¿Notas que hay una “f” antes del string? pues este nos permite colocar variables dentro de la cadena de caracteres mediante el uso de llaves. Así podrás concatenar variables de forma más sencilla.
Ahora empecemos con las preguntas, pero antes evaluaremos la respuesta de la pregunta anterior, la cual fue si ya estaba preparado el jugador.
if respuesta.lower() == 'si':
Utilizaremos el método lower para convertir la respuesta a minúscula y así poder evaluarlo de manera más sencilla, pues, podría habernos respondido usando mayúsculas en una o en todas sus letras lo cual sería más tedioso de comparar. Después de convertirlo a minúscula, pasara a comparar la respuesta con el string “si”.
Si la respuesta fue distinta a “si”, entonces se ejecutara dentro de lo que este en nuestro else en este caso solo mostraremos en consola lo siguiente:
else:
print("Ok, juguemos en otra oportunidad :)")
Pero si la respuesta es igual al string que comparamos, entonces procedemos con lo siguiente dentro del if
if respuesta.lower() == 'si':
respuesta = input('Pregunta 1: ¿Cual es la capital de Hungria?')
if respuesta.lower() == 'budapest':
puntaje += 1
print('¡Correcto! :D')
else:
print('Incorrecto :(, la respuesta es: Budapest')
respuesta = input('Pregunta 2: ¿Cual es la capital de Chile?')
if respuesta.lower() == 'santiago':
puntaje += 1
print('¡Correcto! :D')
else:
print('Incorrecto :(, la respuesta es: Santiago')
respuesta = input('Pregunta 3: ¿Cual es la capital de Ecuador?')
if respuesta.lower() == 'quito':
puntaje += 1
print('correct')
else:
print('Incorrecto :(, la respuesta es: Quito')
Como puedes ver, empezamos a realizar las preguntas y las almacenamos nuevamente en nuestra variable respuesta. Dentro del parentesis colocamos la pregunta que deseemos, esta vez son acerca de capitales nuestro Quiz.
Después de cada pregunta realizamos una evaluación if/else para determinar si respondio correctamente el jugador. Hacemos uso del método lower otra vez para simplificarnos la comparación en caso usase alguna mayúscula el usuario.
Si el jugador responde correctamente, aumentamos el valor de la variable puntaje, en este ejemplo lo fui aumentando en 1. Si el jugador se equivoca, solo se lo hacemos saber imprimiendo en consola además de mostrarle la respuesta.
Bueno, luego de haber realizado las preguntas, llega el momento de saber el puntaje del jugador y despedirse.
print(f'El juego termino. Hicistes {puntaje} preguntas correctas!')
porcentaje = (puntaje / num_preguntas) * 100print(f'Nota obtenida: {porcentaje}')
print('¡Gracias por jugar! Nunca pares de aprender :)')
Nuevamente usamos f delante de nuestros mensajes para poder concatenar nuestras variables. Como habrás notado, hay una variable extra: porcentaje, la cual almacena el porcentaje de preguntas correctas que tuvo el jugador.
Finalmente, nuestro código quedaría así:
print('Quizthon: Capitales del mundo')
puntaje = 0
num_preguntas = 3
respuesta = input(f'Serán {num_preguntas} preguntas ¿Preparado para jugar? (si/no) :')
if respuesta.lower() == 'si':
respuesta = input('Pregunta 1: ¿Cual es la capital de Hungria?')
if respuesta.lower() == 'budapest':
puntaje += 1print('¡Correcto! :D')
else:
print('Incorrecto :(, la respuesta es: Budapest')
respuesta = input('Pregunta 2: ¿Cual es la capital de Chile?')
if respuesta.lower() == 'santiago':
puntaje += 1print('¡Correcto! :D')
else:
print('Incorrecto :(, la respuesta es: Santiago')
respuesta = input('Pregunta 3: ¿Cual es la capital de Ecuador?')
if respuesta.lower() == 'quito':
puntaje += 1print('correct')
else:
print('Incorrecto :(, la respuesta es: Quito')
else:
print("Ok, juguemos en otra oportunidad :)")
print(f'El juego termino. Hicistes {puntaje} preguntas correctas!')
porcentaje = (puntaje / num_preguntas) * 100print(f'Nota obtenida: {porcentaje}')
print('Nunca pares de aprender :)')
🐍Eso fue todo, el código lo puedes modificar para que tu juego tenga tantas preguntas como desees. Sigue realizando más proyectos para que mejores tus habilidades como programador 😃
Nunca pares de aprender 💚