[Python3 练习] 007 简单的猜数字小游戏

题目:简单的猜数字小游戏

(1) 描述

  • 程序随机生成一个数字,玩家用键盘输入所猜数字,在规定次数内猜对为胜。

(2) 要求

  • 程序随机生成一个 1 到 100 的自然数
  • 有 7 次机会去猜
  • 机会用尽之前
    • 若第一次就猜对,则输出“你真厉害,一次就猜对了!”,然后退出程序
    • 若非第一次猜对,则输出“恭喜你,猜对了!”,然后退出程序
    • 若猜错,则给出提示
      • 说明所猜数字与答案相比是“大了”还是“小了”
      • 显示剩余次数
  • 若第 7 次仍没猜对,则先输出答案,再输出“不好意思,游戏结束了,下回加油!”

(3) 程序

1) 代码

# 猜数字小游戏

import random                       # 导入 random 库

flag = 0                            # 7 次都没猜对时的标记,用于打印结束语
lucky_num = random.randint(1,101)   # 随机生成一个 1 到 100 的自然数
guess_num = eval(input("请输入你猜测的数字(一个 1 到 100 的自然数):"))

if guess_num == lucky_num:
    print("你真厉害,第一次就猜对了!")
else:
    for i in range(7):              # 最坏的情况是 7 次全猜错,此时需要和答案比较 7 次
        if guess_num > lucky_num:
            print("\n你猜的数字大了,", end = '')
        elif guess_num < lucky_num:
            print("\n你猜的数字小了,", end = '')
        else:
            print("\n恭喜你,猜对了!")
            flag = 1
            break
        if i < 6:                   # 之前猜过 1 次,这里最多只能猜 6 次
            print("还有", str(6-i), "次机会。\n")
            print('-' * 30)
            guess_num = eval(input("\n请再猜一次:"))

if flag == 0:                       # 7 次都没猜对才打印
    print("答案是:", lucky_num)
    print("\n不好意思,游戏结束了,下回加油!")

2) 运行情况

  • 截图1
    [Python3 练习] 007 简单的猜数字小游戏

  • 截图2
    [Python3 练习] 007 简单的猜数字小游戏

上一篇:C++11,控制台输出的一段小程序。


下一篇:java多线程学习(3)