본문 바로가기
코딩

파이썬으로 행맨(교수형 집행인) 게임 만들어 봤습니다.

by 노마드랩스 2023. 2. 2.
728x90
반응형

게임설명

이 게임은 출제자가 정해놓은 단어를 플레이어가 맞추는 게임입니다.

플레이어는 출제자가 정해놓은 단어를 맞추기 위해 한글자씩 단어를 입력합니다.

답이 틀렸을 경우, 교수형 집행인이 천천히 그려집니다.

게임은 플레이어가 모든 문자를 성공적으로 추측하거나 행맨이 완전히 뽑히면 종료됩니다.

추측할 단어는 hangman 함수에 전달된 인수를 대체하여 변경할 수 있습니다.

def hangman(word):
    word = word.lower()
    wrong_guesses = 0
    stages = ["",
              "________        ",
              "|               ",
              "|        |      ",
              "|        0      ",
              "|       /|\     ",
              "|       / \     ",
              "|               "
              ]
    remaining_letters = set(word)
    letter_board = ["__"] * len(word)
    win = False
    print("Welcome to Hangman")
    
    while wrong_guesses < len(stages) - 1:
        print("\n")
        msg = "Guess a letter: "
        char = input(msg)
        if char in remaining_letters:
            remaining_letters.remove(char)
            index = [i for i, letter in enumerate(word) if letter == char]
            for i in index:
                letter_board[i] = char
            if "__" not in letter_board:
                print("You win!")
                print(" ".join(letter_board))
                win = True
                break
        else:
            wrong_guesses += 1
        print(" ".join(letter_board))
        print("\n".join(stages[0: wrong_guesses + 1]))
    if not win:
        print("\n".join(stages[0: wrong_guesses]))
        print("You lose! It was {}.".format(word))

if __name__ == "__main__":
    hangman("word")

결과

728x90
반응형

댓글