首页 > 编程语言 >python实现猜数字小游戏​

python实现猜数字小游戏​

时间:2023-09-10 23:34:08浏览次数:47  
标签:guess 数字 python 用户 number chances 小游戏 输入

功能需求

尝试利用Python实现一个猜数字小游戏,要求给定用户1—100之间的任意一个数字,用户有十次机会,每次输入一次数字都会减少一次机会。如果用户在机会用完之前猜对数字,或者是在机会用完时也没有猜对数字 那么这场游戏结束。

功能分析

1:引入random模块,使用random.randin()随机生成1—100之间的任意一个整数

2:编写函数,该函数中设置总机会是10,尝试次数是0

3:编写while语句,用于用户输入的数字和随机生成的数字进比较

4:采用input语句获取用户输入数字信息,这里注意,input()获取的是字符串类型的数据,因此需要用int()进行字符转转换成整数类型数据

5:if语句进行用户输入的数字和随机生成的数字之间的比较,并按照功能需求执行不同条件下的打印输出。

程序实现

当然,我们可以使用try...except语句来处理用户输入非法字符串的情况。这样即使用户输入了非数字字符,程序也不会异常退出,而是会给出提示信息并要求用户重新输入。

import random


def guess_number_game():
    number_to_guess = random.randint(1, 100)
    guess = None
    attempts = 0
    chances = 10

    while chances > 0:
        try:
            guess = int(input("请猜一个1到100之间的数字(你还有{}次机会):".format(chances)))
        except ValueError:
            print("无效的输入,请输入一个1到100之间的数字。")
            chances -= 1
            continue
        attempts += 1
        if guess < number_to_guess:
            print("太低了,请再试一次。")
            chances -= 1
        elif guess > number_to_guess:
            print("太高了,请再试一次。")
            chances -= 1
        else:
            print(f"恭喜你,你猜对了!你一共尝试了{attempts}次。")
            break

    if chances == 0:
        print("很遗憾,你没有在十次机会内猜中答案,程序将退出。")


# 开始游戏
guess_number_game()

运行结果

python实现猜数字小游戏​_数据

异常打印

python实现猜数字小游戏​_字符串_02


标签:guess,数字,python,用户,number,chances,小游戏,输入
From: https://blog.51cto.com/u_15928170/7428826

相关文章

  • python之virtualenv虚拟环境
    1.用途:虚拟环境将开发环境相互隔离(如版本),互相不影响.①.virtualenv创建一个虚拟化的python运行环境,安装所需的依赖,使不同项目之间相互不干扰.2.安装:pipinstallvirtualenvvirtualenv--version//检查是否安装成功,查看版本(1).加速镜像源:①.清华源:h......
  • 【Python基础】list(列表)
    list作为Python中最常用的数据结构之一,与其他编程语言的数组有相似的特点,但是它具有着更为强大的功能,接下来将详细地为大家介绍一下list的所有操作。(注:tuple元组类型与list类似,但是tuple的元素不能修改;set集合与list也类似,但是集合中的元素是无序的,且会自动除去重复元素)1.list......
  • Python---0基础学习笔记(一)提供pycharm激活码
    Python语言和开发环境Python下载官网https://www.jetbrains.com/pycharm/download/?section=windows激活码⬇⬇⬇MXMQUYT815-eyJsaWNlbnNlSWQiOiJNWE1RVVlUODE1IiwibGljZW5zZWVOYW1lIjoiSHVuYW4gSW5zdGl0dXRlIG9mIFNjaWVuY2UgYW5kIFRlY2hub2xvZ3kiLCJhc3NpZ25lZU5hbWUiOiJqaWtlIGNv......
  • Python学习笔记-Python循环语句
    while循环的基础语法while语法格式while条件:条件满足时,做的事情1条件满足时,做的事情2条件满足时,做的事情3…(省略)…只要满足条件,会无限循环执行。示例:小美心软,只要表白100次,就会成功。print("小美,我喜欢你")print("小美,我喜欢你")print("小美,我喜欢你")…(还有97次......
  • Python 潮流周刊第 19 期摘要
    原文全文:https://pythoncat.top/posts/2023-09-09-weekly......
  • ⑧初识python--python的列表推导式
    python的列表推导式1、什么是推导式推导式comprehensions(又称为解析式),是python的一个独有特性。推导式是可以从一个数据序列构建另一个新的数据序列(一个有规划的列表或控制一个有规律列表的结构体。共有三种推导式:列表推导式,集合推导式,字典推导式。2、为什么需要推导式列表推......
  • python学习笔记-redis缓存数据库
    一、缓存数据库介绍NoSQL(notonlysql)redis是业界主流的Key-valuenosql数据库之一,和memcached类似redis优点:速度快,每秒可执行大约110000设置操作,81000个/每秒的读取操作支持丰富的数据类型,列表,结合,可排序集合,哈希等操作是原子的二、redis操作安装redisubuntu安装$......
  • ⑦初识python--python数据容器的公共方法
    数据容器的公共方法数据序列的公共方法运算符描述支持容器类型+合并、拼接字符串、列表、元组*复制字符串、列表、元组in判断元素是否存在容器中字符串、列表、元组、字典、集合max()返回容器中的最大值列表、元组、集合min()返回容器中的最小值......
  • 练习:找出出现次数最多的数字
    题:给定一个长度为n的数组nums,请找出其中出现次数大于n/2向下取整的元素。'''如:nums=[1,2,1,2,1]出现最多的元素是1长度为5,5/2向下取整是2,1出现的次数大于2'''###分治算法1classSolution(object):2deffindnum(self,nums):3deffunc(low,high):......
  • 深入浅出理解数据分析系列之:Python安装Excel文档库openpyxl和Pycharm为项目安装Excel
    深入浅出理解数据分析系列之:Python安装Excel文档库openpyxl和Pycharm为项目安装Excel文档库openpyxl一、Python安装openpyxl二、Pycharm为项目安装openpyxl一、Python安装openpyxlpip3installopenpyxlCollectingopenpyxlDownloadingopenpyxl-3.0.9-py2.py3-none-any.whl......