上面的解答都用了try,except,这个错误捕捉在小甲鱼的课中比较偏后,我刚学时做的作业没有用到try,用一些内置方法,你可以参考一下:# guessnumber.py
""" ---My first game ---"""
import random
quitgame=""
while quitgame.lower()!="q":
my_number= random.randint(1,9)
game_times=0
while game_times<3:
temp = input("Guess a number(1-9):")
if temp.lower().strip()=='q':
break
if temp.isdigit() and len(temp)==1: #利用isgigit()来判断输入的是否是数字,用len()来排除多位数的输入
guess = int(temp)
if guess!=my_number:
game_times+=1
if game_times<3:
if guess > my_number:
print("too big!input again,u have left",3-game_times,"times.",end=" ")
else:
print("too small!input again,u have left",3-game_times,"times.",end=" ")
elif 0<guess<10 and guess==my_number:
print("Right number!")
break
if game_times==3:
print("You guess wrong number 3 times!game over!")
print("The right number is "+str(my_number))
if temp.lower().strip()!='q':
quitgame=input("If you want quit game,press Q,other key to contiune!")
else:
break
|