网站后台文档,网站自助建站开发制作,全网精选小程序,wordpress付款后可见python的while更多地应用于程序的一般性循环#xff0c;而不是遍历迭代对象。与其他的计算机编程语言不同#xff0c;python没有do...while这样的while循环。接下来#xff0c;我们将详细介绍一下Python的while循环#xff0c;并用寥寥数行代码开发一个小游戏#xff0c;作…python的while更多地应用于程序的一般性循环而不是遍历迭代对象。与其他的计算机编程语言不同python没有do...while这样的while循环。接下来我们将详细介绍一下Python的while循环并用寥寥数行代码开发一个小游戏作为实例。
while循环
while循环需要一个启动循环和终止循环的条件判断这二者通常为同一个其一般形式为
while condition:do something
while循环猜字小游戏
这里我们用寥寥数行python代码开发一个猜字小游戏因为缩进比较多建议大家使用jupyter notebook编辑器或其它自带缩进功能的集成开发环境IDE。
In[1]:md int(input(请输入谜底:))
start 0
end 100
inp int(input(从%s到%s猜一个数字 %(start, end)))
while start inp end:if inp md:start inpinp int(input(从%s到%s猜一个数字 %(start,end)))elif inp md:end inpinp int(input(从%s到%s猜一个数字 %(start,end))) else:print(恭喜你中奖了)break
————————————————————————————————
请输入谜底:66
从0到100猜一个数字88
从0到88猜一个数字22
从22到88猜一个数字33
从33到88猜一个数字68
从33到68猜一个数字55
从55到68猜一个数字:66
恭喜你中奖了
示例解析
上面的实例是非常典型的while和break的联合应用。
1、intput()函数前面为什么要加一个Int()函数呢因为input()所获取的输入值都是str字符串类型的数据必须将其进行类型转换否则无法进行小于大于等于之类的比较运算。
2、intput()函数用于获取输入值这个函数的前面为什么要加一个Int()函数呢因为input()所获取的输入值都是str字符串类型的数据必须将其进行类型转换否则无法进行小于大于等于之类的比较运算。
3、上面实例中的代码按照从上到下的顺序执行先给游戏设定所要猜测的数字范围分别用start和end两个变量表示这个时候还不是限定范围只是两个变量而已但程序执行到了while的时候开始根据start inp end这个条件进入循环这个时候start和end才变成游戏意义上的限定范围。
4、因为我们的游戏需要限定的范围是越来越小的如上面的游戏中我们第一次猜了88大于谜底的66则限定范围变成0到88第二次猜猜测的数字为22小于谜底的66则限定范围变成22到88以此类推。所以在while的循环之中我们要确保两个方面的功能能够完成一是限定范围不断变化二是限定范围变化的同时不影响到while循环的条件所以我们需要对start变量和end变量在循环之中不断根据输入值进行赋值如startinpendinp。
5、当我们猜到了谜底while循环就结束这里我们并不是根据条件判断来终止循环而是用break。
游戏代码优化
我们还可以将上面的小游戏进行优化一下就是将谜底用随机数而不是用认为输入的方式。
In[1] import random #导入随机数的库
md random.randint(0,100) #在0到100之间取一个随机的整数
... #下面的代码一样
————————————————————————————————
从0到100猜一个数字66
从0到66猜一个数字22
从0到22猜一个数字10
从10到22猜一个数字11
从11到22猜一个数字15
从15到22猜一个数字17
从17到22猜一个数字18
恭喜你中奖了
注意这个游戏中有一个bug大家知道是什么吗就是当我们输入的数字在数字的限定范围之外的话程序会终止。那要怎么改呢大家可以自己去尝试一下。很简单。
来源笨鸟工具
原文python的while循环游戏实例
免责声明内容仅供参考不保证正确性