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

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

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

话不多说,直接上代码!

python 复制代码
# -*- 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()

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

相关推荐
灵感菇_几秒前
Java 锁机制全面解析
java·开发语言
wazmlp00188736913 分钟前
python第三次作业
开发语言·python
娇娇乔木13 分钟前
模块十一--接口/抽象方法/多态--尚硅谷Javase笔记总结
java·开发语言
明月醉窗台26 分钟前
qt使用笔记六之 Qt Creator、Qt Widgets、Qt Quick 详细解析
开发语言·笔记·qt
wangjialelele29 分钟前
平衡二叉搜索树:AVL树和红黑树
java·c语言·开发语言·数据结构·c++·算法·深度优先
深蓝电商API30 分钟前
住宅代理与数据中心代理在爬虫中的选择
爬虫·python
lili-felicity37 分钟前
CANN性能调优与实战问题排查:从基础优化到排障工具落地
开发语言·人工智能
独自破碎E39 分钟前
【BISHI15】小红的夹吃棋
android·java·开发语言
进阶小白猿1 小时前
Java技术八股学习Day33
java·开发语言·学习
历程里程碑2 小时前
普通数组----合并区间
java·数据结构·python·算法·leetcode·职场和发展·tornado