蟒蛇excersise從learnpython.org: 我在與中粗體的額外excersise麻煩:蟒蛇猜謎遊戲excersise目前我在做
生成1到9之間的隨機數(包括1和9) 。要求用戶猜出這個數字,然後告訴他們他們是否猜測得太低,太高,或者是否正確。 (提示:記得從第一次練習使用用戶輸入的教訓)
附加功能:
保持遊戲下去,直到用戶鍵入「退出」
跟蹤多少猜測用戶已經採取了,當遊戲結束時,打印出來。
這是到目前爲止我的代碼:
import random
def gameTracker():
global playedGames
playedGames = 1
playedGames = playedGames+1
def generateNumber():
global generatednumber
generatednumber = random.randint(1, 9)
def generateuserGuess():
global userguess
userguess = int(input('Pick a number between 1-9: '))
def generationProcess():
global userguess
if int(userguess) == generatednumber:
print('You have guessed the number. Congratulations.')
gameTracker()
global playAgain
playAgain = input('Want to play again? y/n: ')
if playAgain == 'y':
generateNumber()
userguess = input('Pick a new number between 1-9: ')
generationProcess()
if playAgain == 'n':
print('The game has ended. You have played: ')
print(int(playedGames))
print('games')
if int(userguess) > generatednumber:
print('You have guessed too high.')
global conConfirm
conConfirm = str(input('Guess again?: c/quit: '))
conGame()
if int(userguess) < generatednumber:
print('You have guessed too low.')
conConfirm = str(input('Guess again?: c/quit: '))
conGame()
def conGame():
if conConfirm == 'c':
global userguess
userguess = int(input('Your new guess please: '))
generationProcess()
if conConfirm == 'quit':
print('The game has ended. You have played: ')
print(int(playedGames))
print('games')
generateNumber()
generateuserGuess()
generationProcess()
當用戶按下「n」或打不打印出正確的數字遊戲,這意味着gameTracker()
寫的不好後「跳槽」 /錯誤,但它也出於某種原因打印了遊戲進行的次數* playAgain =='n'後發生了什麼。
我怎麼會去各地做這項工作?
我給這家excersise最終的代碼可以在這裏找到: http://codepad.org/4T6v7C56 我被騙了一下,進口'sys'模塊'sys.exit'和它停止遞歸。代碼不是很漂亮,但它的工作原理。如果您在播放時發現錯誤或其他內容,請告訴我。 – Alekong