Hangman은 재미 있고 초보 프로그래머를 위한 훌륭한 프로젝트인 고전적인 단어 추측 게임입니다.
이 기사에서는 Python으로 행맨 게임의 간단한 버전을 빌드하는 방법을 알아봅니다.
마지막에는 Python의 기본 제어 구조, 함수 및 목록을 사용하여 이 게임을 만드는 방법을 이해하게 됩니다.
행맨의 목표는 한 글자씩 제안하여 비밀 단어를 추측하는 것입니다.
플레이어는 게임이 끝나기 전에 제한된 수의 잘못된 추측만 할 수 있습니다.
잘못된 추측마다 "행맨" 그림의 일부가 그려지고, 단어가 추측되기 전에 전체 그림이 그려지면 플레이어가 패배합니다.
이를 세분화하여 단계별로 게임을 구축해 보겠습니다.
게임과 주요 기능을 계획해 보겠습니다.
게임에는 다음 구성요소가 있습니다:
random 모듈을 사용하여 목록에서 단어를 무작위로 선택합니다.
import random
다음으로 게임이 무작위로 선택할 단어 목록을 정의합니다.
더 많은 단어를 추가하여 게임을 더욱 흥미롭게 만들 수 있습니다.
word_list = ['python', 'java', 'hangman', 'programming', 'computer']
단어 목록에서 단어를 무작위로 선택하는 기능이 필요합니다.
def get_random_word(word_list): return random.choice(word_list)
플레이어가 글자를 추측하면 올바르게 추측한 글자와 추측하지 못한 글자에 대한 자리 표시자(_)를 표시해야 합니다.
def display_word(word, guessed_letters): display = '' for letter in word: if letter in guessed_letters: display = letter ' ' else: display = '_ ' return display.strip()
이 기능은 단어의 모든 문자가 추측되었는지 확인합니다.
def is_word_guessed(word, guessed_letters): for letter in word: if letter not in guessed_letters: return False return True
텍스트 기반 게임에서 행맨 그림을 표시하려면 ASCII 아트를 사용하여 행맨의 다양한 단계를 나타낼 수 있습니다.
def display_hangman(wrong_guesses): stages = [ """ ----- | | O | /|\\ | / \\ | | -------- """, """ ----- | | O | /|\\ | / | | -------- """, """ ----- | | O | /|\\ | | | -------- """, """ ----- | | O | /| | | | -------- """, """ ----- | | O | | | | | -------- """, """ ----- | | O | | | | -------- """, """ ----- | | | | | | -------- """ ] # Reverse the list to display the stages in the correct order stages.reverse() return stages[wrong_guesses]
이제 게임의 메인 루프를 구성할 수 있습니다. 이 루프는 다음을 수행합니다.
import random # Function to get a random word from the list def get_random_word(word_list): return random.choice(word_list) # Function to display the current state of the word def display_word(word, guessed_letters): display = '' for letter in word: if letter in guessed_letters: display = letter ' ' else: display = '_ ' return display.strip() # Function to check if the word has been guessed def is_word_guessed(word, guessed_letters): for letter in word: if letter not in guessed_letters: return False return True # Function to display the hangman figure def display_hangman(wrong_guesses): stages = [ """ ----- | | O | /|\\ | / \\ | | -------- """, """ ----- | | O | /|\\ | / | | -------- """, """ ----- | | O | /|\\ | | | -------- """, """ ----- | | O | /| | | | -------- """, """ ----- | | O | | | | | -------- """, """ ----- | | O | | | | -------- """, """ ----- | | | | | | -------- """ ] # Reverse the list to display the stages in the correct order stages.reverse() return stages[wrong_guesses] # Main function to play the game def play_hangman(): word_list = ['python', 'java', 'hangman', 'programming', 'computer'] word = get_random_word(word_list) guessed_letters = [] attempts = 6 wrong_guesses = 0 print("Welcome to Hangman!") print("Guess the word!") # Main game loop while wrong_guesses설명
게임을 실행하려면 main.py 파일을 만들었다고 가정하고 Python 스크립트를 실행하면 됩니다.
python main.py
게임에서 글자를 입력하라는 메시지가 표시되며, 진행하면서 정확하게 추측된 글자와 함께 단어가 표시됩니다.
시도 횟수가 부족하면 게임이 종료되고 다음과 같이 패배하게 됩니다.
----- | | O | /|\ | / \ | | -------- Game over! The word was: programming
다음과 같이 단어를 정확하게 맞히면 승리하게 됩니다.
----- | | | | | | -------- j a _ a Enter a letter: v Good guess! v is in the word. Congratulations! You've guessed the word: java
이 간단한 행맨 게임은 Python의 제어 구조, 함수, 목록 및 기본 입력/출력의 사용을 보여줍니다.
이 프로젝트를 빌드하면서 다음과 같은 기능을 더 추가할 수 있습니다.
이것은 고급 Python 개념을 배우면서 확장할 수 있는 훌륭한 프로젝트입니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3