프로그래밍 시작하기 : 파이썬 입문(inflearn Original)
버전 1.
# Cahpter 10-1
# Hangman(행맨) 미니 게임 제작(1)
import time
#처음 인사
name = input("What is ur name? ")
print("Hi, " + name, "Time to play hangman game!")
print()
time.sleep(1)
print("Start Loading...")
print()
time.sleep(0.5)
# 정답 단어
word = "secret"
# 추측 단어
guesses = ''
# 기회
turns = 10
# 핵심 While loop
# 찬스 카운트가 남아 있을 경우
while turns > 0:
# 실패 횟수(단어 매치 수)
failed = 0
# 정답 단어 반복
for char in word:
# 정답 단어 내에 추측 문자가 포함되어 있는 경우
if char in guesses:
# 추측 단어 출력
print(char, end=' ')
else:
print("_", end=' ')
failed += 1
# 단어 추측이 성공한 경우
if failed == 0:
print()
print()
print('Congratulations! The Guesses is correct.')
break
print()
# 추측 단어 문자 단위 입력
print()
guess = input("Guess a character.")
# 단어 더하기
guesses += guess
# 정답 단어에 추측한 문자가 포함되어 있지 않으면
if guess not in word:
turns -= 1
print("Oops! Wrong")
print("you have" , turns, " more guesses!")
if turns == 0:
print("You hanman game failed. Bye!")
버전2
# Cahpter 10-02
# Hangman(행맨) 미니 게임 제작(2)
# 프로그램 작성 및 최종 테스트
import time
import csv
import random
import winsound
#처음 인사
name = input("What is ur name? ")
print("Hi, " + name, "Time to play hangman game!")
print()
time.sleep(1)
print("Start Loading...")
print()
time.sleep(0.5)
# CSV 단어 리스트
words = []
# 문제 csv 파일 로드
with open('./word_list.csv', 'r') as f:
reader = csv.reader(f)
# Header Skip
next(reader)
for c in reader:
words.append(c)
#리스트 섞기
random.shuffle(words)
q = random.choice(words)
# 정답 단어
word = q[0].strip() # 공백 제거
# 추측 단어
guesses = ''
# 기회
turns = 10
# 핵심 While loop
# 찬스 카운트가 남아 있을 경우
while turns > 0:
# 실패 횟수(단어 매치 수)
failed = 0
# 정답 단어 반복
for char in word:
# 정답 단어 내에 추측 문자가 포함되어 있는 경우
if char in guesses:
# 추측 단어 출력
print(char, end=' ')
else:
print("_", end=' ')
failed += 1
# 단어 추측이 성공한 경우
if failed == 0:
print()
print()
winsound.PlaySound('./good.wav', winsound.SND_FILENAME)
print('Congratulations! The Guesses is correct.')
# 성공 사운드
break
print()
# 추측 단어 문자 단위 입력
print()
print('Hind : {}'.format(q[1].strip()))
guess = input("Guess a character.")
# 단어 더하기
guesses += guess
# 정답 단어에 추측한 문자가 포함되어 있지 않으면
if guess not in word:
turns -= 1
print("Oops! Wrong")
print("you have" , turns, " more guesses!")
if turns == 0:
winsound.PlaySound('./bad.wav', winsound.SND_FILENAME)
print("You hanman game failed. Bye!")

'개발 공부 > Python' 카테고리의 다른 글
프로그래밍 시작하기 : 파이썬 입문 8. 기본 함수~9.파일 쓰기 (0) | 2020.07.05 |
---|---|
프로그래밍 시작하기 : 파이썬 입문 6. 클래스, 모듈, 패키지~7.예약처리 (0) | 2020.07.05 |
프로그래밍 시작하기 : 파이썬 입문 4.흐름 제어~5.파이썬 함수 및 입력 (0) | 2020.07.05 |
프로그래밍 시작하기 : 파이썬 입문 2.완전 기초~3.기초 자료형 (0) | 2020.07.05 |
(new) 프로그래밍 시작하기 : 파이썬 입문 1. 파이썬 시작해봐요. (1) | 2020.07.03 |