[Python #11] update game for comment and exception
This commit is contained in:
parent
99470b4f53
commit
67e7a3ac62
2 changed files with 68 additions and 51 deletions
|
@ -2,60 +2,44 @@ import baseballgameclass
|
|||
|
||||
|
||||
|
||||
# initial fucntion
|
||||
size = []
|
||||
|
||||
a_test2 = baseballgameclass.InputNumber()
|
||||
|
||||
#size = a_test2.getGameSize()
|
||||
|
||||
#print(size)
|
||||
|
||||
a_test = baseballgameclass.GameNumber()
|
||||
#a_test.createNumberSet(size[1], size[0])
|
||||
#number = a_test.createGameNumber()
|
||||
#print(number)
|
||||
|
||||
cGameNumber = baseballgameclass.GameNumber()
|
||||
guess = []
|
||||
checknewgame = 0
|
||||
inputset = {}
|
||||
inputset = set()
|
||||
|
||||
a_test2 = baseballgameclass.InputNumber()
|
||||
#guess = a_test2.getNumber(size[0])
|
||||
# assign class
|
||||
cInputNumber = baseballgameclass.InputNumber()
|
||||
cCheckNumber = baseballgameclass.CheckNumber()
|
||||
cPrintResult = baseballgameclass.PrintResult()
|
||||
|
||||
|
||||
a_test3 = baseballgameclass.CheckNumber()
|
||||
#result3 = a_test3.compareNumber(number, guess)
|
||||
|
||||
a_test4 = baseballgameclass.PrintResult()
|
||||
#a_test4.printResult(result3)
|
||||
#print(result3)
|
||||
|
||||
a = 0
|
||||
b = {}
|
||||
b = set()
|
||||
|
||||
while True:
|
||||
|
||||
if a == 0:
|
||||
if checknewgame == 0: # check new game
|
||||
# get game size and max of number
|
||||
size = a_test2.getGameSize()
|
||||
b = a_test.createNumberSet(size[1], size[0])
|
||||
number = a_test.createGameNumber(b)
|
||||
a = 1
|
||||
elif a != 3:
|
||||
size = cInputNumber.getGameSize()
|
||||
inputset = cGameNumber.createNumberSet(size[1], size[0])
|
||||
number = cGameNumber.createGameNumber(inputset)
|
||||
checknewgame = 1
|
||||
elif checknewgame != 3: # running game
|
||||
while True:
|
||||
guess = a_test2.getNumber(size[0])
|
||||
result3 = a_test3.compareNumber(number, guess)
|
||||
a_test4.printResult(result3)
|
||||
print(number)
|
||||
guess = cInputNumber.getNumber(size[0]) # get created gaem number
|
||||
result3 = cCheckNumber.compareNumber(number, guess) # compare input number and game number
|
||||
cPrintResult.printResult(result3) # print result
|
||||
# print(number)
|
||||
if result3[0] == size[0]:
|
||||
print('You win.')
|
||||
b = input('continue a game (y or n) : ')
|
||||
if b == 'y':
|
||||
a = 0
|
||||
newgame = input('continue a game (y or n) : ')
|
||||
if newgame == 'y':
|
||||
checknewgame = 0 # continue game
|
||||
break
|
||||
else:
|
||||
a = 3
|
||||
checknewgame = 3 # stop game
|
||||
break
|
||||
elif a == 3:
|
||||
elif checknewgame == 3: # exit game
|
||||
break
|
||||
|
||||
|
||||
|
|
|
@ -3,8 +3,6 @@ import random
|
|||
|
||||
class GameNumber():
|
||||
# create game's numbers
|
||||
#s = {}
|
||||
#s = set()
|
||||
|
||||
# create number set for game
|
||||
def createNumberSet(self, amount, gamesize):
|
||||
|
@ -29,8 +27,6 @@ class GameNumber():
|
|||
|
||||
class CheckNumber():
|
||||
# check number whether it is right
|
||||
#strike = 0
|
||||
#ball = 0
|
||||
|
||||
# compare number between a guess answer and a right answer
|
||||
def compareNumber(self, gameNumber, guessNumber):
|
||||
|
@ -56,21 +52,58 @@ class CheckNumber():
|
|||
|
||||
class InputNumber():
|
||||
# user inputs numbers
|
||||
#userGuess = []
|
||||
#amountNumber = []
|
||||
|
||||
def getGameSize(self):
|
||||
amountNumber = []
|
||||
amountNumber.append(int(input('put a game size : ')))
|
||||
amountNumber.append(int(input('put a max of number : ')))
|
||||
while True: # check wrong input
|
||||
temp = input('put a game size : ')
|
||||
try:
|
||||
if len(temp) > 1:
|
||||
raise
|
||||
|
||||
for i in temp:
|
||||
if i not in '0123456789':
|
||||
raise
|
||||
except:
|
||||
print('it is not number or too big, input again')
|
||||
else:
|
||||
amountNumber.append(int(temp))
|
||||
break
|
||||
|
||||
return amountNumber
|
||||
while True: # check wrong input
|
||||
temp = input('put a max of number : ')
|
||||
try:
|
||||
if len(temp) > 1:
|
||||
raise
|
||||
|
||||
for i in temp:
|
||||
if i not in '0123456789':
|
||||
raise
|
||||
except:
|
||||
print('it is not number or too big, input again')
|
||||
else:
|
||||
amountNumber.append(int(temp))
|
||||
|
||||
return amountNumber
|
||||
|
||||
def getNumber(self, gameSize):
|
||||
userGuess = []
|
||||
for i in range(gameSize):
|
||||
print('put ', i+1, ' of numbers : ', end='')
|
||||
userGuess.append(int(input()))
|
||||
while True: # check wrong input
|
||||
print('put ', i+1, ' of numbers : ', end='')
|
||||
temp2 = input()
|
||||
try:
|
||||
if len(temp2) > 1:
|
||||
raise
|
||||
|
||||
for k in temp2:
|
||||
if k not in '0123456789':
|
||||
raise
|
||||
except:
|
||||
print('it is not number or too big, input again')
|
||||
else:
|
||||
userGuess.append(int(temp2))
|
||||
break
|
||||
|
||||
return userGuess
|
||||
|
||||
|
|
Loading…
Reference in a new issue