【Python入门教程】Python实现猜数字小游戏

发布时间 2023-09-25 12:19:44作者: RS迷途小书童

        今天跟大家分享一下很久之前自己做的一款猜数字小游戏,基本的循环判断语句即可实现,可以用来当练手或者消磨时间用。

        大家在编代码的时候最重要就是先理清逻辑思路,例如应该套几层循环、分几个模块等等。然后在编码时可以先随意一点,变量名、函数等可以先随便命名,将整个程序的逻辑跑通,然后再逐行修改变量名、优化代码逻辑、封装函数等等。当然这只是我的个人习惯,可能不是效率最高的,大家可以参考一下。

# -*- coding: utf-8 -*-
"""
@Time : 2023/4/12 17:03
@Auth : RS迷途小书童
@File :猜数字.py
@IDE :PyCharm
@Purpose:猜数字游戏
"""
import random
import time


def game1(a, b, c):
    x = int(random.randint(a, b))
    # 随机生成一个数到内存
    y = int(input("请输入一个整数:"))
    # 输入一个数
    while y <= a or y >= b:
        # 判断输入的数是否在区间内
        if y == 520:
            # 判断输入的数是否为作弊代码
            y = int(input("答案是:" + str(x) + "请输入:"))
        else:
            y = int(input("超出区间范围,请重新输入:"))
    else:
        i = 1
        while y != x:
            # 判定数是否正确
            if i <= c-1:
                # 判定是否超过次数
                if y == 520:
                    y = int(input("答案是:" + str(x) + "请输入:"))
                else:
                    if y < a or y > b:
                        y = int(input("超出区间范围,请重新输入:"))
                    else:
                        i = i + 1
                        if y > x:
                            print("你猜的有点大了,再试试吧~")
                            print("你还剩的机会:", c - i + 1)
                        else:
                            print("你猜的有点小了,再试试吧~")
                            print("你还剩的机会:", c - i + 1)
                        y = int(input("请输入一个整数:"))
            else:
                print("你的机会用完了,再来挑战一次吧!")
                e = input("回复Yes重新开始游戏,回复其他内容游戏结束\n")
                if e == "Yes":
                    # 判定是否继续玩
                    game_input()
                else:
                    print("游戏结束,下次记得来玩哦~")
                    break
                break
        else:
            print("恭喜你,猜对了!")
            c = input("回复Yes重新开始游戏,回复其他内容游戏结束\n")
            if c == "Yes":
                game_input()
            else:
                print("游戏结束,下次记得来玩哦~")


def game_input():
    # import time
    print("欢迎来到猜字游戏")
    time.sleep(1.5)
    print("游戏开始前可以选择要猜的区间,在游戏过程中不可输入超出区间的数值,同时输入数字后请按回车以确认")
    time.sleep(2)
    print("输入区间开始游戏")
    # time.sleep(1)
    a = int(input("输入区间最小值:"))
    # time.sleep(0.2)
    b = int(input("输入区间最大值:"))
    while b <= a:
        print("区间输入错误,请重新输入!")
        a = int(input("输入区间最小值:"))
        # time.sleep(0.2)
        b = int(input("输入区间最大值:"))
    else:
        c = int(input("你需要几次机会:"))
        print("你共有" + str(c) + "次机会,如果猜对了就会有奖励,反之则无")
        game1(a, b, c)


if __name__ == "__main__":
    game_input()

        程序反正很简单,就是基本的语句,新手可以看看。然后自己复现一下同样的功能!