input只能输入数字_13.python之猜数字

eeaf3d1dabd3f6c34c8c5e41c87d30a1.png

能学到这一课,相信前面的内容你已经掌握的差不多了,本节课的内容是通过一个练习将前面的知识点串联,这个练习是猜数字。随机生成一个数字,在规定的次数内进行猜测,不论对错都会给出反馈,规定次数内未猜对则退出。

还记得第10课while循环中讲的编程方法吗?编程分为3个步骤,依次是确认目标、分析过程、代码实现,下面我们就按照这个步骤进行操作。

一、确认目标

目标很简单,随机生成一个数字和猜测的进行比较,然后反馈结果。分解来看就是生成数字、输入数字、比较数字、输出结果。

二、分析过程

回想一下之前学过的知识,随机生成数字没有讲过,这个暂且不提。

输入数字用input()函数可以实现,比较数字用条件判断语句if可以实现,输出结果用print()函数可以实现。如果需要多次比较,那么要用到for循环或while循环了。

这么一看,是不是很容易就能实现了?除此之外,还有随机生成数字没有搞定。其实这并不难,在前面的课程中我一直强调,要学会运用网络资源解决问题。

百度搜索【python如何随机生成数字】,在结果中选择第一项点击查看。

3b41b284af3bb1e9c27052b0eb3875f8.png

里面说的很清楚,需要通过【import random】和【random.randint(a,b)】来实现。

1c3bf29dfb0bd64d9c7a59f4b05a261a.png

【import random】是调用random模块,目的是可以使用模块封装好的变量、函数和类。虽然函数和类都没有讲到,但是并不影响我们调用random模块。也不用担心,后面会有专门的课程来讲解模块、函数、类。

【random.randint(a,b)】的作用是随机生成一个a和b之间的整数N,生成范围是a<=N<=b。

随机生成数字搞定,这下没有问题了,下面就让我们进入代码实现。

三、代码实现

先来实现随机生成数字,看下面的代码:

import 

如果你想知道生成的数字是什么,可以用print(number)打印出来。

然后是输入猜测的数字,这时候要用到input()函数,看下面的代码:

guess 

提醒一下,之所以用int()是因为input()函数返回的数据类型是字符串,需要转换成整数。

随机生成的数字和猜测的数字都有了,接下来就是对它们进行比较,用到条件判断语句if。因为还需要判断结果,所以用到print()函数。代码如下:

if 

写到这里,程序已经可以正常运行了,而且能进行猜测结果判断。但是,进行一次程序就会退出。如果我们想进行多次判断,就需要引入循环语句。

假设要进行3次输入数字和判断,该使用哪种循环语句呢?用for循环,前面讲过当循环次数确定时,for循环比while循环更方便。代码如下:

for 

这时候我们发现,虽然范围只有1到10,但是在没有提示的情况下,想要在3次之内猜对太难了。为了降低难度,需要在猜错时提示猜测的数字是大了还是小了。代码如下:

import 

虽然游戏难度降低了,但是同样出现了一个问题,如果3次之内就猜对了,依旧会猜3次,这样明显不符合常理,需要用到break语句,让代码在猜对时结束循环。而如果3次都没有猜对,也需要输出提示告知。代码如下:

import 

到这里,本节课的内容就完成了,是不是很容易?下节课会再做一个练习——石头剪刀布。需要用到的知识点和编程思想与本节课类似,希望你能在下节课之前,尝试独立完成。

喜欢的话请点赞和收藏 (●'◡'●)ノ

想看更多精彩内容请关注公众号【打酱油的白熊】。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值