【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()

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

相关推荐
亿牛云爬虫专家8 分钟前
优化数据的抓取规则:减少无效请求
python·数据采集·多线程·爬虫代理·数据抓取·代理ip·房价
程序媛堆堆10 分钟前
解决NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+问题
python
DreamByte13 分钟前
Python Tkinter小程序
开发语言·python·小程序
Python极客之家14 分钟前
基于深度学习的眼部疾病检测识别系统
人工智能·python·深度学习·毕业设计·卷积神经网络
Bigcrab__20 分钟前
Python3网络爬虫开发实战(15)Scrapy 框架的使用(第一版)
爬虫·python·scrapy
覆水难收呀21 分钟前
三、(JS)JS中常见的表单事件
开发语言·前端·javascript
阿华的代码王国25 分钟前
【JavaEE】多线程编程引入——认识Thread类
java·开发语言·数据结构·mysql·java-ee
繁依Fanyi31 分钟前
828 华为云征文|华为 Flexus 云服务器部署 RustDesk Server,打造自己的远程桌面服务器
运维·服务器·开发语言·人工智能·pytorch·华为·华为云
weixin_486681141 小时前
C++系列-STL容器中统计算法count, count_if
开发语言·c++·算法
基德爆肝c语言1 小时前
C++入门
开发语言·c++