新手求助:Python数字猜谜游戏的回合计数与终止逻辑实现
数字猜谜游戏代码修复方案
问题分析
- 原代码用
while True无限循环,无法自动完成5轮后终止 - 缺少统计胜负次数的变量
import random放在循环内部,重复导入会降低运行效率
修复后的代码
import random # 初始化胜负计数器 dealer_wins = 0 player_wins = 0 # 执行5轮游戏 for round in range(5): print(f"\n--- 第 {round + 1} 轮 ---") player = int(input("Guess a Number:")) dealer = int(input("Dealer Guess:")) num1 = random.randint(0, 100) print(f"Random Number: {num1}") playerdist = abs(player - num1) dealerdist = abs(dealer - num1) if playerdist > dealerdist: print("Dealer Wins") dealer_wins += 1 elif playerdist < dealerdist: print("Player Wins") player_wins += 1 else: print("Draw") # 输出最终胜负统计 print(f"\nDealer wins: {dealer_wins} Player wins: {player_wins}") # 判断最终结果 if dealer_wins >= 3: print("Sorry Try Again") elif player_wins >= 3: print("Congrats you win")
关键修改说明
- 把
import random移到代码开头,避免循环内重复导入 - 用
for range(5)替代无限循环,精准控制5轮游戏 - 新增
dealer_wins和player_wins变量,每轮获胜时对应计数加1 - 循环结束后输出统计结果,并根据胜负次数触发对应提示
内容的提问来源于stack exchange,提问作者creek indy
相关产品推荐
相关产品推荐

