대학교 1학년 때 팩맨 게임 만들기 과제를 해본 적이 있었는데, 막상 오랜만에 만드려니까 쉽지만은 않았다. 분명 저번 학기때만해도 더 어려운 알고리즘 코딩도 해보고 그랬었는데 벌써 모든 게 다 휘발된 기분이다.
def word_game():
answer = random.choice(words)
guess = '_' * len(answer)
print(f'{len(answer)}자리 단어입니다.')
print(guess)
guess_list = []
life = 9
while life > 0:
try_guess = input('알파벳 중 하나를 입력해주세요')
if try_guess not in guess_list:
guess_list.append(try_guess)
if try_guess in answer:
reveal = ''
for i in range(len(answer)):
if answer[i] == try_guess:
reveal += answer[i]
else:
reveal += guess[i]
guess = reveal
print(guess)
if '_' not in guess:
print('단어를 맞췄습니다!')
break
else:
life -= 1
print(f'오답입니다. 목숨이 줄었습니다. 현재 남은 목숨은 {life}개 입니다')
print(guess)
if life == 0:
print(f'게임 오버입니다. 정답은 "{answer}"입니다')
print(f'지금까지 시도해본 단어: {guess_list}')
사실 문제에서 요구된 사항은 단어 자릿수 알려주기, 맞춘 알파벳 드러내기, 승리 및 패배 조건 뿐이지만, 입력을 소문자 혹은 대문자까지의 알파벳으로 제한하기, 이전 입력과 중복되는 알파벳 입력 시 알림 후 재입력 기능도 추가해보고 싶다.
오늘은 guess_list 기능을 추가해 본 것으로 만족한다.