首页 > 编程语言 >Python实现猜数字游戏:带提示范围和随机生成数字功能

Python实现猜数字游戏:带提示范围和随机生成数字功能

时间:2024-08-06 15:57:37浏览次数:15  
标签:10 数字 min Python number range 随机 输入

概述

这篇文章将介绍一个使用Python编写的简单猜数字游戏。该游戏会随机生成一个1到10之间的数字,然后用户需要猜测这个数字。每次猜测后,程序会根据用户的输入调整提示范围,直到用户猜中为止。

代码实现

首先,导入必要的模块并生成一个随机数:

import random # 生成1-10之间的随机数字
target_number = random.randint(1, 10) min_range = 1 max_range = 10

使用 random.randint(1, 10) 函数生成一个1到10之间的随机数,并初始化提示范围的最小值和最大值。

接下来,进入一个无限循环,等待用户输入数字:
 

while True:
    number = int(input(f"请输入{min_range}-{max_range}的任意一个数字:\n"))

    if number > 10 or number < 1:
        print("输入超出范围,请输入1-10的数字。")
        continue

    if number > target_number:
        max_range = number - 1
        print(f"太大了,请从{min_range}-{max_range}之间重新输入")
    elif number < target_number:
        min_range = number + 1
        print(f"太小了,请从{min_range}-{max_range}之间重新输入")
    else:
        print("恭喜你,猜中了")
        break
代码解释
  1. 用户输入检查

    • 程序首先提示用户输入一个在当前范围内的数字。
    • 如果输入的数字超出1到10的范围,程序会提示用户重新输入。
  2. 判断用户输入

    • 如果输入的数字大于目标数字,程序会调整最大范围,并提示用户输入较小的数字。
    • 如果输入的数字小于目标数字,程序会调整最小范围,并提示用户输入较大的数字。
    • 如果用户猜中了目标数字,程序会输出祝贺信息并结束循环。




       
完整代码
import random

# 生成1-10之间的随机数字
target_number = random.randint(1, 10)
min_range = 1
max_range = 10

while True:
    number = int(input(f"请输入{min_range}-{max_range}的任意一个数字:\n"))

    if number > 10 or number < 1:
        print("输入超出范围,请输入1-10的数字。")
        continue

    if number > target_number:
        max_range = number - 1
        print(f"太大了,请从{min_range}-{max_range}之间重新输入")
    elif number < target_number:
        min_range = number + 1
        print(f"太小了,请从{min_range}-{max_range}之间重新输入")
    else:
        print("恭喜你,猜中了")
        break

结论

        这个简单的猜数字游戏示例展示了如何使用Python进行基本的用户交互和条件判断。通过随机生成目标数字和动态调整提示范围,游戏不仅增加了趣味性,也提高了用户体验。

希望这篇文章对你了解Python编程有所帮助,欢迎在CSDN上分享你的学习成果和心得。

标签:10,数字,min,Python,number,range,随机,输入
From: https://blog.csdn.net/m0_60909222/article/details/140954513

相关文章

  • python SQLite 访问组件
    importosimportsqlite3fromsqlite3importErrorfromqueueimportQueue,EmptyfromtypingimportList,Tuple,AnyclassSQLiteDB:default_db_path=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))default_db_file=default_db_path......
  • Python 卡在第 1 页
    让它读取下一页结果的最佳方法是什么?目前正在拉取数据,但只有第1页importrequestsimportjsonpage=1url="https://api-prod.grip.events/1/container/4368/search?search=&sort=name&order=asc&type_id=4907,4906,5265,4964,4904,1026,4908&page=%d"headers={......
  • 无法反序列化解码 JWT python 时的关键数据
    我正在使用pyjwt库来解码JWT令牌。我在解码时遇到此错误。代码在文档中给出。importjwtencoded_jwt='''eyJ0eXAiOiJKV1QiLCJhbG......'''secret=b''''-----BEGINPUBLICKEY-----MIIFRjCCBC6gAwIBAgIQCIdSGhpikQCjOIY154XoqzANBgkqhkiG9......
  • Python科研武器库 - 字符串操作 - 字符串开头结尾判断 startswith() endswith()
    使用场景:按照开头的前缀、结尾的后缀来判断、筛选目标字符串。使用函数:str.startswith(search_string,start,end)str.endswith(search_string,start,end)search_string:要匹配的目标字符串。start:要从中匹配search_string的str的起始索引。end:要考虑匹配的str的结......
  • 我正在 python 中使用 aspose.pdf 将 pdf 转换为 excel 。但问题是它只能将 pdf 的前
    `从tkinter导入*将aspose.pdf导入为ap从tkinter导入文件对话框importpandasaspdinput_pdf=filedialog.askopenfilename(filetypes=(("PDF文件",".pdf"),("所有文件",".")))output_file=filedialog.asksaveasfil......
  • 如何在selenium python中访问电子邮件中的所有文件夹
    我使用imaplib库,但有时无法访问某些帐户,我使用poplib但它只支持访问主邮箱,但不支持访问其他文件夹,如垃圾邮件我想使用imaplib,但不会出现有时甚至无法访问的错误尽管我有一个帐户,但我仍然可以访问它,或者是否有另一个库可以快速支持该帐户?你想要使用Selenium和Python......
  • 使用pytorch实现数字识别器
    前言:本篇文章是关于数字识别器的识别和卷积神经网络的应用。若对卷积神经网络不熟悉,可参考文章:卷积神经网络关于深度学习的一些代码及实战,可参考深度学习基础(github)下面我们尝试用PyTorch搭建一个卷积神经网络,并用它来解决手写数字识别的问题。1、数据准备#torchvisio......
  • python安装torch-cluster、torch-scatter、torch-sparse和torch-geometric | torch_ge
    1.检查CUDA版本【方法1】用nvidia-smi已装cuda,用nvidia-smi或nvcc-V查看【方法2】用torch已装torch,用torch代码打印importtorchprint(torch.__version__)#查看pytorch安装的版本号print(torch.cuda.is_available())#查看cuda是否可......
  • 光学数字孪生系统仿真
    一、光学数字孪生系统搭建的意义1、降低开发风险:在实际制造前,搭建光学系统进行仿真可以帮助发现潜在的设计问题,如光学元件的干涉、衍射等效应,从而在早期阶段避免昂贵的迭代和修改。2、成本效益分析:光学系统的仿真,可以在设计阶段评估不同方案的效果,减少实际制造成本。  二、......
  • Python:学生成绩管理系统(大学编程期末实验)
    引言在这个信息时代,教育管理的自动化已成为提高效率的关键。本文将介绍如何使用Python开发一个学生成绩管理系统,旨在简化成绩记录、查询和分析的过程。创作灵感来源本项目灵感来源于我在教育机构的工作经历,以及对提高教育管理效率的持续追求。通过复盘过往项目,我意识到一个......