Skip to content

【练习】猜数字

项目简介

猜数字游戏

知识模块

  • Python 编程语言

知识点

  • 随机数生成-random 模块
  • 循环语句-while
  • 循环语句-for-in
  • 用户输入-input()
  • 变量操作-统计玩家猜测的总次数

受众

  • 初级测试开发工程师
  • 初级Python开发工程师

作业要求

编写一个 Python 程序,实现一个猜数字的游戏。程序随机生成一个1-100目标数字,在一定的范围内,玩家需要根据提示猜测目标数字,直到猜中为止。游戏会根据玩家的猜测给出提示,告诉玩家猜的数字是大了还是小了,最终告诉玩家猜对了,并显示猜测次数。

解题思路

  1. 生成目标数字: 使用 random 模块随机生成一个目标数字,可以使用 randint() 函数来指定数字范围。

  2. 接收玩家输入: 使用 input() 函数接收玩家猜测的数字。

  3. 判断猜测结果: 将玩家输入的猜测数字与目标数字进行比较,如果相等则猜对了,游戏结束。如果猜测数字大于目标数字,给出 "猜大了" 的提示,如果小于目标数字,给出 "猜小了" 的提示。

  4. 循环猜测: 使用循环让玩家可以多次猜测,直到猜对为止。在每次循环中,接收玩家输入并判断猜测结果。

  5. 记录猜测次数: 在循环中,可以使用一个变量来记录玩家猜测的次数,以便最后告诉玩家猜对时猜了多少次。

完整代码

import random

# 生成目标数字
target_number = random.randint(1, 100)

# 初始化猜测次数
guess_count = 0

while True:
    # 接收玩家输入
    guess = int(input("请输入你的猜测数字:"))

    # 增加猜测次数
    guess_count += 1

    # 判断猜测结果
    if guess == target_number:
        print(f"恭喜你猜对了!目标数字是 {target_number},你共猜了 {guess_count} 次。")
        break
    elif guess < target_number:
        print("猜小了,请继续猜测。")
    else:
        print("猜大了,请继续猜测。")

代码讲解

  1. import random:导入 Python 的 random 模块,用于生成随机数。

  2. target_number = random.randint(1, 100):使用 random.randint() 函数生成一个介于 1 到 100 之间的随机目标数字。

  3. guess_count = 0:初始化猜测次数为 0。

  4. while True::进入一个无限循环,使游戏可以持续进行。

  5. guess = int(input("请输入你的猜测数字:")):接收玩家输入的猜测数字,并将输入的字符串转换为整数。

  6. guess_count += 1:每次循环猜测次数加一,记录玩家尝试的次数。

  7. 判断猜测结果: 如果玩家猜对了(guess == target_number),输出恭喜信息,显示目标数字和玩家猜测的次数,然后终止循环。 如果玩家猜测的数字小于目标数字,输出提示让玩家继续猜测。 如果玩家猜测的数字大于目标数字,同样输出提示继续猜测。 游戏继续循环,直到玩家猜对为止。