
El juego del ahorcado.

mi tercer jeugo en python
este proyecto en el lenguaje de programación de python es el famoso juego de stick man en el cual debes adivinar una palabra secreta en una cantidad maxima de intentos, en este caso cree una lista en la cual guarde 9 palabras las cuales yo puse. para que puedas ver el dibujo del muñequito a lo large del juego cree una variable tipo string en la cual guarde todos los dibujos los cuales generee con chat gpt, esta variable esta en una función .
Para saber en cual dibujo debes estar cree una variable que contiene la cantidad de vidas que tiene el jugador, esta variable es llamada vidas_jugador. tambien cree una variable llamada letras adivinadas en la cual divide las palabras en la lista de palabras y verifica si el input del jugador es parte de esa palabra, si la letra del input es correcta la letra es guardada en la ariable que ya dije.
en este projecto aprendi a utilizar los loop for de una mejor manera, a como utilizar el .append, .lower y el join
librerias que use
- random: es una función que te permite generar entre otras cosas, números aleatorios que para este juego lo utilize para que en la lista de palanbras elijiera una random y despues utilizar esa para el jeugo
codigo
import random
def juego_ahorcado():
dibujos = [
"""
------
| |
|
|
|
|
--------
""",
"""
------
| |
| O
|
|
|
--------
""",
"""
------
| |
| O
| |
|
|
--------
""",
"""
------
| |
| O
| /|
|
|
--------
""",
"""
------
| |
| O
| /|\\
|
|
--------
""",
"""
------
| |
| O
| /|\\
| /
|
--------
""",
"""
------
| |
| O
| /|\\
| / \\
|
--------
"""
]
palabras = ["sol", "paz", "luz", "flor", "mar", "amor", "cielo", "voz", "rayo"]
palabra_random = random.choice(palabras)
cantidad_vidas = 6
letras_adivinadas = []
print(f"Esto es un test. La palabra secreta tiene {len(palabra_random)} letras.") #len sirve para sacar la longitud de una palabra en este caso en el de la palabra random
while cantidad_vidas > 0:
print(dibujos[6 - cantidad_vidas])
# progreso = [letra if letra in letras_adivinadas else "_" for letra in palabra_random]
progreso = []
for letra in palabra_random:
if letra in letras_adivinadas:
progreso.append(letra) # Agrega la letra adivinada
else:
progreso.append("_") # Agrega un guion bajo si no se ha adivinado la letra
# pega los elemento de la lista con un espacio en blanco entre ellos
print("Progreso:", " ".join(progreso))
letra_input = input("Ingresa una letra: ").lower()
if letra_input in letras_adivinadas:
print("Ya has adivinado esa letra.")
elif letra_input in palabra_random:
letras_adivinadas.append(letra_input)
print("¡Correcto!")
else:
cantidad_vidas -= 1
print(f"Incorrecto, te quedan {cantidad_vidas} vidas.")
if set(palabra_random) <= set(letras_adivinadas):
print(f"¡Felicidades! Has adivinado la palabra: {palabra_random}")
break
if cantidad_vidas <= 0:
print(dibujos[-1])
print(f"Has perdido. La palabra era: {palabra_random}")
while True:
juego_ahorcado()
jugar_denuevo = input("deseas jugar nuevamente? (s/n): ").lower()
if jugar_denuevo != ("s"):
break