我试图验证一个简单的问题,用户是否想要玩游戏 - 是或否。
while True:
start = ''
start = input("Do you want to play Python Black Jack? Enter Yes or No: ")
if start.lower().startswith('y'):
print("let the game begin")
break
elif start.lower().startswith('n'):
print ("Goobye")
break
else:
print ("Looks like you did not enter a valid answer!")
continue
代码确实运行了几次但是然后它突然停止运行 - 我认为发生的是当我打破while循环时,True语句不再适用,因此当我重新运行程序时它不会进入再次循环。
请您帮忙告诉我我做错了什么或发生了什么,或者避免这种归档循环的最佳做法是什么。
答案 0 :(得分:0)
中断语句将突破循环。如果在某些时候执行 break 的任何条件为True,那么你的循环将停止。
答案 1 :(得分:0)
你需要两个循环 - 一个用于保持游戏运行,一个用于得到是/否答案..也许像这样构建你的代码:
def shouldStartGame():
while True:
start = input("Do you want to play Python Black Jack? Enter Yes or No: ")
if start.lower().startswith('y'):
print("let the game begin")
return True
if start.lower().startswith('n'):
print ("Goodbye")
return False
print ("Looks like you did not enter a valid answer!")
while True:
if not shouldStartGame():
break
print("Here the rest of the game goes")