Coding Global Background
Coding Global

need help with my python project pls (hangman game)

Archiviert 2 years ago
7 Nachrichten
1 Mitglieder
2 years ago
In Discord öffnen
V
vyxi

Hi, I dont understand why my code updates the variable for `letters_guessed` in the while loop but not for `number_of_incorrect_guesses` in my understanding, it should work here is my code: ```py import random def is_game_over(hidden_word, letters_guessed, number_of_incorrect_guesses): if all(letter in letters_guessed for letter in hidden_word): if input("You win! would you like to play again? (y/n) ").lower() == "y": main() elif number_of_incorrect_guesses == 6: word = ''.join([letter for letter in hidden_word]) print(f"""You lose :( the hidden word was {word}""") if input("would you like to play again? (y/n) ").lower() == "y": main() else: number_of_incorrect_guesses += 1 return number_of_incorrect_guesses >= 6 def ask_user_for_guess(letters_guessed): guess = input("Guess a letter: ").lower() if len(guess) != 1 or not guess.isalpha() or guess in letters_guessed: print("Invalid guess. Please enter a single letter you haven't guessed yet.") ask_user_for_guess(letters_guessed) else: letters_guessed.append(guess) def print_hidden_word(hidden_word, letters_guessed): for letter in hidden_word: if letter in letters_guessed: print(letter, end="") else: print("_", end="") print() def print_gallows(number_of_incorrect_guesses): gallows = [ ] print(gallows[number_of_incorrect_guesses]) def main(): print("Welcome to Hangman!") word_list = [ ] hidden_word = list(random.choice(word_list)) letters_guessed = [] number_of_incorrect_guesses = 0 while not is_game_over(hidden_word, letters_guessed, number_of_incorrect_guesses): ask_user_for_guess(letters_guessed) is_game_over(hidden_word, letters_guessed, number_of_incorrect_guesses) print_gallows(number_of_incorrect_guesses) print_hidden_word(hidden_word, letters_guessed) main()```

Antworten (7)