[英]Is there any way in python to repeat a while or for loop by asking the user to do so at the end of the loop?
我剛開始學習Python,並且正在編寫一個簡單的骰子滾動程序,該程序向用戶詢問骰子的數量以及骰子的邊數。
到目前為止,我有這個:
numberOfDice = eval(input("How many dice/die would you like to use? "))
numberOfSides = eval(input("How many sides will each die have? "))
for i in range(1,numberOfDice + 1) :
roll = random.randint(1,numberOfSides)
print(roll)
while True :
replay = input("Would you like to play again? ")
if replay.lower() == "yes" :
numberOfDice = eval(input("How many dice/die would you like to use? "))
numberOfSides = eval(input("How many sides will each die have? "))
for i in range(1,numberOfDice + 1) :
roll = random.randint(1,numberOfSides)
print(roll)
else :
break
它可以工作,但是對我來說似乎並不是很有效。 我想知道是否有一種方法可以在第一個for循環結束時詢問用戶是否要再次播放,如果他們說是,請向他們詢問新值並再次重復for循環。 有什么辦法可以做這樣的事情嗎?
通用應用程序是“有效時保持”循環,例如:
replay = True
while replay:
... remainder of code
replay = raw_input("Roll again? (y or n)") == 'y'
注意,這是一個簡單的版本,沒有錯誤檢查:如果用戶輸入“ y”,則程序繼續;否則,程序將繼續。 其他任何事情都終止了滾轉杜茲的絕妙世界(永遠不要說'die':-))。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.