Python 询问用户是否想再次播放,但键入“是”只会再次重复此问题,而不是重新开始
这是一个猜数字的游戏 解释 首先,它要求用户输入一个介于1到50之间的数字 如果数字正确,则您获胜,否则您必须再试一次(中奖数字是随机的,当然了)您的猜测也有限 代码下面提到了问题 这是我的代码:)Python 询问用户是否想再次播放,但键入“是”只会再次重复此问题,而不是重新开始,python,loops,if-statement,Python,Loops,If Statement,这是一个猜数字的游戏 解释 首先,它要求用户输入一个介于1到50之间的数字 如果数字正确,则您获胜,否则您必须再试一次(中奖数字是随机的,当然了)您的猜测也有限 代码下面提到了问题 这是我的代码:) 随机导入 获胜人数=23 猜测=1 猜测左=9 游戏结束=错误 结束游戏=错误 数字输入=假 虽然没有结束游戏: 如果不是数字,请输入: 尝试: ask=int(输入(“输入一个介于1和50之间的数字:”) 打印(f“总猜测={猜测左}”) 打破 除值错误外: 打印(“无效输入!!”) 持续 虽然游
随机导入
获胜人数=23
猜测=1
猜测左=9
游戏结束=错误
结束游戏=错误
数字输入=假
虽然没有结束游戏:
如果不是数字,请输入:
尝试:
ask=int(输入(“输入一个介于1和50之间的数字:”)
打印(f“总猜测={猜测左}”)
打破
除值错误外:
打印(“无效输入!!”)
持续
虽然游戏尚未结束:
如果ask==获胜人数:
打印(f“您通过在{guesses}时间内猜到数字而获胜!!”)
打印(“您想再次播放吗?”)
尽管如此:
ask1=输入(“仅输入‘是’或‘否’:)
ask1=ask1.lower()
如果ask1==‘是’:
打印(“您选择再次播放”)
游戏结束=错误
打破
elif ask1==“否”:
打印(“感谢您玩这个游戏”)
游戏结束=正确
结束游戏=正确
打破
其他:
打印(“请仅填写“是”或“否”)
持续
elif ask>winning_num:
打印(“太高!!”)
猜测+=1
猜左-=1
尽管如此:
尝试:
ask=int(输入(“重试:”)
打印(f“猜测左={猜测左}”)
打破
除值错误外:
打印(“无效输入!!”)
持续
如果猜测_left==1:
打印(“只剩下一个猜测!!”)
持续
elif猜测_left==0:
打印(“你输了!!”)
打破
elif ask如果ask1=yes,您必须将game_over=False设置为,这样它就可以在循环时从父循环中出来并继续。此外,您还必须重置猜测次数等,以便它作为一个新游戏开始。如果ask1=yes,您必须将game_over=False设置为,以便它可以在循环时从父循环中出来并继续。此外,您还必须重置猜测次数等,以便它作为新游戏开始。导入随机
import random
winning_num = 23
guesses = 1
guesses_left = 9
game_over = False
end_game = False
number_enter = False
while not end_game:
while not number_enter:
try:
ask = int(input("ENTER A NUMBER BETWEEN 1 AND 50: "))
print(f"TOTAL GUESSES = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
while not game_over:
if ask==winning_num:
print(f"YOU WON BY GUESSING THE NUMBER IN {guesses} TIME(S)!!")
print("DO YOU WANT TO PLAY AGAIN?")
while True:
ask1 = input("ENTER 'YES' OR 'NO' ONLY: ")
ask1 = ask1.lower()
if ask1=='yes':
print("YOU CHOSE TO PLAY AGAIN")
game_over = True
break
elif ask1=="no":
print("THANK YOU FOR PLAYING THIS GAME")
game_over = True
end_game = True
break
else:
print("PLEASE WRITE 'YES' OR 'NO' ONLY ")
continue
elif ask>winning_num:
print("TOO HIGH!!")
guesses+=1
guesses_left-=1
while True:
try:
ask = int(input("TRY AGAIN: "))
print(f"GUESSES LEFT = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
if guesses_left==1:
print("ONLY ONE GUESS LEFT!!")
continue
elif guesses_left==0:
print("YOU LOSE!!")
break
elif ask<winning_num:
print("TOO LOW!!")
guesses+=1
guesses_left-=1
while True:
try:
ask = int(input("TRY AGAIN: "))
print(f"GUESSES LEFT = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
if guesses_left==1:
print("ONLY ONE GUESS LEFT!!")
continue
elif guesses_left==0:
print("YOU LOSE!!")
break
获胜人数=23
猜测=1
猜测左=9
游戏结束=错误
结束游戏=错误
数字输入=假
虽然没有结束游戏:
如果不是数字,请输入:
尝试:
ask=int(输入(“输入一个介于1和50之间的数字:”)
打印(f“总猜测={猜测左}”)
打破
除值错误外:
打印(“无效输入!!”)
持续
虽然游戏尚未结束:
如果ask==获胜人数:
打印(f“您通过在{guesses}时间内猜到数字而获胜!!”)
打印(“您想再次播放吗?”)
尽管如此:
ask1=输入(“仅输入‘是’或‘否’:)
ask1=ask1.lower()
如果ask1==‘是’:
打印(“您选择再次播放”)
游戏结束=正确
打破
elif ask1==“否”:
打印(“感谢您玩这个游戏”)
游戏结束=正确
结束游戏=正确
打破
其他:
打印(“请仅填写“是”或“否”)
持续
elif ask>winning_num:
打印(“太高!!”)
猜测+=1
猜左-=1
尽管如此:
尝试:
ask=int(输入(“重试:”)
打印(f“猜测左={猜测左}”)
打破
除值错误外:
打印(“无效输入!!”)
持续
如果猜测_left==1:
打印(“只剩下一个猜测!!”)
持续
elif猜测_left==0:
打印(“你输了!!”)
打破
elif askimport random
获胜人数=23
猜测=1
猜测左=9
游戏结束=错误
结束游戏=错误
数字输入=假
虽然没有结束游戏:
如果不是数字,请输入:
尝试:
ask=int(输入(“输入一个介于1和50之间的数字:”)
打印(f“总猜测={猜测左}”)
打破
除值错误外:
打印(“无效输入!!”)
持续
虽然游戏尚未结束:
如果ask==获胜人数:
打印(f“您通过在{guesses}时间内猜到数字而获胜!!”)
打印(“您想再次播放吗?”)
尽管如此:
ask1=输入(“仅输入‘是’或‘否’:)
ask1=ask1.lower()
如果ask1==‘是’:
打印(“您选择再次播放”)
游戏结束=正确
打破
elif ask1==“否”:
打印(“感谢您玩这个游戏”)
游戏结束=正确
结束游戏=正确
打破
其他:
打印(“请仅填写“是”或“否”)
持续
elif ask>winning_num:
打印(“太高!!”)
猜测+=1
猜左-=1
尽管如此:
尝试:
ask=int(输入(“重试:”)
打印(f“猜测左={猜测左}”)
打破
除值错误外:
import random
winning_num = 23
guesses = 1
guesses_left = 9
game_over = False
end_game = False
number_enter = False
while not end_game:
while not number_enter:
try:
ask = int(input("ENTER A NUMBER BETWEEN 1 AND 50: "))
print(f"TOTAL GUESSES = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
while not game_over:
if ask==winning_num:
print(f"YOU WON BY GUESSING THE NUMBER IN {guesses} TIME(S)!!")
print("DO YOU WANT TO PLAY AGAIN?")
while True:
ask1 = input("ENTER 'YES' OR 'NO' ONLY: ")
ask1 = ask1.lower()
if ask1=='yes':
print("YOU CHOSE TO PLAY AGAIN")
game_over = True
break
elif ask1=="no":
print("THANK YOU FOR PLAYING THIS GAME")
game_over = True
end_game = True
break
else:
print("PLEASE WRITE 'YES' OR 'NO' ONLY ")
continue
elif ask>winning_num:
print("TOO HIGH!!")
guesses+=1
guesses_left-=1
while True:
try:
ask = int(input("TRY AGAIN: "))
print(f"GUESSES LEFT = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
if guesses_left==1:
print("ONLY ONE GUESS LEFT!!")
continue
elif guesses_left==0:
print("YOU LOSE!!")
break
elif ask<winning_num:
print("TOO LOW!!")
guesses+=1
guesses_left-=1
while True:
try:
ask = int(input("TRY AGAIN: "))
print(f"GUESSES LEFT = {guesses_left}")
break
except ValueError:
print("INVALID INPUT!!")
continue
if guesses_left==1:
print("ONLY ONE GUESS LEFT!!")
continue
elif guesses_left==0:
print("YOU LOSE!!")
break