猜数游戏--课后程序(Python程序开发案例教程-黑马程序员编著-第3章-课后作业)
创始人
2024-05-30 19:34:15
0

实例10:猜数游戏

猜数游戏是一个古老的密码破译类、益智类小游戏,通常由两个人参与,一个人设置一个数字,一个人猜数字,当猜数字的人说出一个数字,由出数字的人告知是否猜中:若猜测的数字大于设置的数字,出数字的人提示“很遗憾,你猜大了”;若猜测的数字小于设置的数字时,出数字的人提示“很遗憾,你猜小了”;若猜数字的人在规定的次数内猜中设置的数字,出数字的人提示“恭喜,猜数成功”。

本实例要求编写程序,实现遵循上述规则的猜数字游戏,并限制猜数机会只有5次。

实例目标

  1. 掌握while循环的使用
  2. 了解break的基本用法
  3. 了解导入random模块的方式

实例分析

本案例的猜数字游戏是针对1-100以内的整数数字进行猜测,猜测的数字由Python中random模块中randint()方法随机产生;因为规定玩家有5次机会,所以可以使用for循环与range()函数控制循环次数,在进行猜数过程中还需要对玩家输入的内容进行判断,这里可以使用if-elif语句判断,如使用isdigit()方法判断玩家输入的内容是否是数字;使用比较运算符判断玩家输入的数字是否符合在规定范围内;判断玩家输入的数字是否与产生的随机数相等,如果相等输出“恭喜你用了x次猜对了”,当输入次数达到5次时,则输出“很遗憾,x次机会已用尽,游戏结束,答案为y”。根据以上分析可整理出以下实现思路:

(1)使用import语句导入random模块

(2)使用random模块中的randint()方法生成一个100以内的随机整数

(3)使用for循环控制玩家猜测的次数

(3)使用input ()函数接收玩家输入的数据

(4)判断输入数据的数据是否为数字

(5)判断输入的数据是否在指定范围内

(6)判断玩家输入的数据是否与生成的随机数一致,如果一致使用break语句跳出循环

(7)如果玩家输入的数据与生成额随机数不一致,给出相应提示

(8)当玩家猜测5次后,仍没有猜对,结束程序

代码实现

import random

print("猜数字游戏,输入一个1-100以内的数字")

random_num = random.randint(1, 100)

# print(random_num)  # 打开注释可查看生成的随机数

for frequency in range(1,6):

    number = input("请输入一个数字:")

    if number.isdigit() is False:

        print('请输入一个正确的数字')

    elif int(number) < 0 or int(number) > 100:

        print("请输入1-100范围的数字")

    elif random_num == int(number):

        print("恭喜你用了%d次猜对了" % frequency)

        break

    elif random_num > int(number):

        print("很遗憾,你猜小了")

    else:

        print("很遗憾,你猜大了")

    if frequency == 5:

        print("很遗憾,%d次机会已用尽,游戏结束,答案为%d" % (frequency, random_num))

首先使用random模块中的randint()方法随机生成一个整数并赋值给变量random_num,然后使用for循环遍历5次判断用户猜测的数字是否正确,在for循环中将用户输入的内容赋值给变量number,并对输入的内容进行判断:如果输入的内容不是数字或者输入的数字范围不在1-100之间,使用print()函数分别输出“请输入一个正确数字”或“请输入1-100范围的数字”;如果用户输入的数字符合要求,判断输入的数字与随机生成的数字是否相等。如果猜测的数字与随机生成的数字相等,使用print()函数输出“恭喜你用了x次猜对了”,并使用break跳出while循环;如果输入的数字小于或大于随机生成的数字,那么使用print()函数输出“很遗憾,你猜小了”或“很遗憾,你猜大了”,当变量frequency值为5时,使用print()函数输出正确结果。

代码测试

运行代码,控制台输出结果如下(猜数成功):

猜数字游戏,输入一个1-100以内的数字

请输入一个数字:12

很遗憾,你猜小了

请输入一个数字:14

恭喜你用了2次猜对了

运行代码,控制台输出结果如下(猜数失败):

猜数字游戏,输入一个1-100以内的数字

请输入一个数字:1

很遗憾,你猜小了

请输入一个数字:1

很遗憾,你猜小了

请输入一个数字:1

很遗憾,你猜小了

请输入一个数字:1

很遗憾,你猜小了

请输入一个数字:1

很遗憾,你猜小了

很遗憾,5次机会已用尽,游戏结束,答案为25

相关内容

热门资讯

安卓平板系统权限软件,全面解析... 你有没有发现,现在安卓平板的用途越来越广泛了?从办公到娱乐,从学习到游戏,平板电脑几乎成了我们生活中...
安卓系统给ios赠送,跨平台融... 你知道吗?最近在科技圈里,安卓系统和iOS系统之间又上演了一场“跨界送礼”的大戏。没错,就是那个我们...
平板安卓系统备份还原,轻松实现... 你有没有遇到过这种情况:平板里的照片、视频、联系人等重要数据突然不见了,心里那个急啊!别担心,今天就...
vc 安卓系统开发,基于VC与... 你有没有想过,为什么你的手机里那么多应用,而有些应用却能在众多竞争者中脱颖而出,成为你日常生活的得力...
安卓系统的平板测评,性能与体验... 你有没有想过,在这个科技飞速发展的时代,拥有一款性能卓越的平板电脑是多么酷炫的事情啊!想象在阳光明媚...
小米手环系统不是安卓,非安卓生... 你有没有想过,那个陪伴你每天锻炼、监测健康的小米手环,它的系统竟然不是安卓?没错,就是那个我们熟悉的...
安卓系统密室小游戏,解锁神秘世... 你有没有想过,在手机里也能体验一把密室逃脱的刺激呢?没错,就是那种需要你动脑筋、找线索、解谜题的密室...
搜索华为安卓系统,引领智能生态... 你有没有想过,为什么华为的手机那么受欢迎呢?其中一个重要原因就是它的安卓系统。今天,就让我带你深入探...
安卓系统截图怎么截图,凝练精华 你是不是也和我一样,有时候想保存一下手机上的精彩瞬间,却发现安卓系统的截图功能有点让人摸不着头脑?别...
安卓怎样扩张系统内存,解锁更多... 你有没有想过,你的安卓手机内存不够用的时候,是不是感觉就像是在高速公路上突然没油了一样,急得团团转?...
安卓系统对比骁龙,性能与生态的... 你有没有想过,为什么你的手机里装的是安卓系统,而不是苹果的iOS呢?又或者,为什么你的安卓手机里搭载...
qt程序安卓系统运行,基于Qt... 你有没有想过,为什么有些手机上的程序运行得那么顺畅,而有些却总是卡得让人抓狂?今天,就让我来给你揭秘...
安卓系统免费应用推荐,助你畅享... 手机里的应用是不是越来越多,有时候都挑花眼了呢?别急,今天我就来给你推荐一些安卓系统上的免费应用,让...
安卓系统视频通话app,打造无... 你有没有发现,现在手机上的视频通话功能越来越强大了?尤其是安卓系统上的那些视频通话app,简直让人爱...
安卓系统发现高危病毒,守护手机... 亲爱的手机用户们,最近可是有个大消息在安卓系统用户群里炸开了锅!没错,就是安卓系统发现了一款高危病毒...
安卓系统疯狂弹广告,揭秘广告软... 你有没有遇到过这种情况?手机里突然弹出一个广告,让你瞬间心情大崩溃?没错,说的就是安卓系统那让人头疼...
ebook 10进入安卓系统 你有没有发现,最近你的安卓手机里多了一个新伙伴——那就是电子书(ebook)10!没错,就是那个我们...
安卓系统如何调听筒,安卓系统调... 手机听筒声音突然变小了?别急,让我来教你如何轻松调教安卓系统的听筒,让它重新恢复活力!一、检查音量设...
安卓系统是怎么手机,解锁智能生... 你有没有想过,我们每天不离手的安卓手机,它背后的安卓系统究竟是怎么一回事呢?今天,就让我带你一探究竟...
安卓系统能代替windows系... 你有没有想过,我们日常使用的安卓系统和Windows系统,哪个才是真正的霸主呢?是不是有时候觉得安卓...