我做了一个小数猜测游戏,如果需要,我已经让它重新启动。 然而,它会重新开始并重新开始询问“myname”,我该如何使它回到它认为数字的那一点,并且记得我第一次的名字?转到while循环的某个部分
import random
restart = '1'
def main():
guessestaken = 0
print ('Hello, what is your name?')
myname = raw_input()
number = random.randint(1, 50)
print ('Okay ' + myname + ', I am thinking of a number between 1 and 50. You have 5 guesses.')
while guessestaken < 5:
print ('Take a guess.')
guess = input()
guess = int(guess)
guessestaken = guessestaken + 1
if guess < number:
print ('Your guess is too low.')
if guess > number:
print ('Your guess is too high.')
if guess == number:
break
if guess == number:
guessestaken = str(guessestaken)
print ('Good job ' + myname + ', you got the correct answer in ' + guessestaken + ' guesses')
if guess != number:
number = str(number)
print ('Oh dear ' + myname + ', the number I was thinking of was ' + number + '.')
while restart == '1':
main()
restart = raw_input('Would you like to try again? Press 1 for Yes, and 2 for No: ')
此刻它再次要求我的名字。我的意思是,它是功能性的,只是令人讨厌。
感谢
你为什么不多种功能拆分起来,每问一个问题,只是重复那些要重复? (例如,将名称分解为单独的函数,并且在while循环之前调用它) – poke