为高低猜数游戏添加循环功能的技术咨询
为高低猜数游戏添加重复游玩的循环功能建议
你可以通过while循环实现重复游玩的功能,这是新手最容易理解和上手的实现方式。核心思路是把游戏的核心逻辑包裹在循环内,每局游戏结束后询问用户是否继续,根据用户选择决定是否开启新一局。
修改后的完整代码
# Welcome to my high/lower game. You will guess the second number in the game, is it higher or lower than the number presented? # imports import random # 用while True创建无限循环,直到用户主动退出 while True: # 每局重新生成随机数,避免重复使用同一组数字 num1 = random.randint(0, 10) num2 = random.randint(0, 10) guess = "" print("Welcome to higher or lower, Choose whether or not the number is higher or lower") print("The first number is", num1, "Enter h for higher or l for lower to guess the second number") guess = input('-->') if guess == 'h': if num1 < num2: print("you guessed it! the number is:", num2) else: print("Nice guess but the number is:", num2) elif guess == 'l': if num1 > num2: print("you guessed it! the number is:", num2) else: print("Nice guess but the number is:", num2) else: print("Not an acceptable entry") # 游戏结束后询问是否继续 play_again = input("想再玩一局吗?输入y继续,其他任意键退出:") # 兼容大小写输入,比如用户输入Y也能识别 if play_again.lower() != 'y': print("游戏结束,再见!") break
关键修改说明
- 外层循环:
while True会创建一个无限循环,游戏的所有核心逻辑都放在循环内部,每一轮循环对应完整的一局游戏流程。 - 随机数重置:把
num1和num2的生成代码移到循环内,确保每一局都是全新的随机数,不会复用上一局的数字。 - 退出机制:每局结束后通过输入询问用户意愿,若用户不输入
y(或Y),就用break跳出循环,终止游戏。
如果你想进一步优化,还可以添加输入容错处理(比如过滤空格、无效字符),但上面的代码已经能满足基础的重复游玩需求,适合新手理解和调试。
内容的提问来源于stack exchange,提问作者Daniel Gardner
相关产品推荐
相关产品推荐

