import random from os import system # Word categories categories = { "Coding": ["Python", "Variable", "Function", "Loop", "Algorithm", "Debugging", "Syntax", "Class", "Recursion", "Library"], "Gaming": ["Console", "Controller", "Quest", "Level", "Avatar", "Powerup", "Multiplayer", "Strategy", "Virtual", "Adventure"], "Movies": ["Action", "Comedy", "Thriller", "Drama", "Romance", "SciFi", "Fantasy", "Horror", "Animation", "Mystery"], "Travel": ["Beach", "Adventure", "Culture", "Explore", "Passport", "Destination", "Backpack", "Journey", "Sightseeing", "Vacation"] } # Get player name player = input("Enter your name: ") print() print(f"\t\t\tWelcome to this word guessing game {player}.") print("\t\t\tYou will get 10 chances to guess the word.") print(f"\t\t\t\t\t\tAll The Best {player}") print("\n\n") # Print available categories for i in categories.keys(): print(f"{i}") # Select category category = input("Select category: ").title() if category not in categories: print("Invalid category!") exit() # Select a random word from the chosen category word = random.choice(categories[category]) # Initialize guessed and wrong variables guessed = len(word) * '_' wrong = "" chances = 10 # Total number of guesses # Clear the console screen system('cls') # Display initial word with underscores for i in word: print("_", end=" ") print() # Main game loop while chances > 0: word = word.lower() guessed = guessed.lower() # Check if the player has guessed all the characters correctly if sorted(guessed) == sorted(word): print(f"Congrats {player}, you win!!") print(f"The correct word was, {word}") break # Ask the player to enter a character guess = input("Enter a character: ").lower() # Check if the guessed character is correct if guess in word: for i in range(len(word)): if word[i] == guess: tempg = list(guessed) tempg.pop(i) tempg.insert(i, guess) guessed = ''.join([elem for elem in tempg]) # Display the current progress for i in range(len(word)): if word[i] == guessed[i]: print(word[i], end=" ") else: print("_", end=" ") print("\nYou are correct!!\n\n") # If the guessed character is incorrect elif guess not in word: wrong += guess print("\nYou are wrong!!\n\n") print(f"Chances left = {chances}") chances -= 1 # Player has used all the chances if chances == 0: print(f"Alas {player}, You Lose!") print("Better luck next time...") print(f"The correct word was, {word}") print("Thanks for Playing, Have a nice day!")