四、循环控制之计数器
上一节中的猜数字猜对了打印Good.
猜的大了打印小一点
猜的小了打印大一点
下面在加上另外一个需求,
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 guding = 50 2 name = int(input("Please enter:")) 3 if name == guding: 4 print("Good!!!") 5 elif name > name: 6 print("A bit bigger!!!") 7 else: 8 print("A little bit small!!")
----------------------------------------------------------------
需求1.猜错了无限循环直到才对了退出
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 print("Please enter a number between 1-100!!!") 2 guding = 50 3 name = 1 4 while guding != name: 5 name = int(input("Please enter:")) 6 if name == guding: 7 print("Congratulations on your right!!") 8 # break 9 elif name > guding: 10 print("A bit bigger!!!") 11 else: 12 print("A little bit small!!!")
说明:
luck_num 定义一个正确的数字
input_num 定义一个随机数字
while 循环 判断 input_num(随机数字) 不等于 luck_num(正确的数字),然后在执行input_num的输入来判断
if 判断 如果input_num 等于 input_num{input_num=int(input("Plesse enter:"))}输入的数字,那就打印 print("Congratulations on your right!!")
elif 在如果input_num 大于 luck_num 就打印print("A bit bigger!!!")
else 否则 打印print("A little bit small!!!")
注意:此判断有多种写法,下面给出另外一种写法
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 guding = 50 2 name = 1 3 while guding != name: 4 name = int(input("Please enter:")) 5 # if name == guding: 6 # print("Congratulations on your right!!") 7 # break 8 if name > guding: 9 print("A bit bigger!!!") 10 elif name < guding: 11 print("A little bit small!!!") 12 print("Congratulations on your right!!")
此方法可以参照上一个循环来理解
计数器:
在这里在加上另外一个需求,再猜数字的过程中,只有三次机会,猜错三次将退出程序
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # -*- coding:utf-8 -*- 2 guding = 50 3 #定义一个猜对了的固定数值 4 jishuqi = 0 5 #给计数器定义一个起始值 6 7 #while guding != name: 8 #while guding != name and jishuqi < 3: 9 while jishuqi < 3: 10 #这里判断 计数器 小于 3次 为真,并且执行以下条件 11 print("aaaa:",jishuqi) 12 #这里是打印计数器 13 name = int(input("Please enter:")) 14 #这里给输入数值定义一个变量 15 if name > guding: 16 #判断输入的变量是否等于定义的固定数值(50) 17 print("A bit bigger!!!") 18 #上边的if判断如果为真则打印 19 elif name < guding: 20 #这里判断 输入的变量是否小于固定数值(50) 21 print("A little bit small!!!") 22 #如果输入变量小于固定数值则打印 23 else: 24 #如果上面判断都为假,则打印正确 25 #一个数值的对比有三种结果,一种大于,一种小于,一种等于,上面判断了大于和小于,如果都不是,那这里就为真 26 print("Bingo!") 27 break 28 #上面判断else 为真则 打印Bingo!并且跳出循环 29 jishuqi += 1 30 #jishuqi = jishuqi + 1 方法 等于 jishuqi += 1 方法 31 else: 32 #此处的else 是表示当上面的条件(jishuqi < 3)不满足了while循环结束了,才会执行此处的else 33 #当上面的循环没有正常退出(上面的break)就跳出了所以就不会再执行此处的else 34 print("Too many retrys!!!")
---------------------------------------------------------------------------------------------
一种循环为 whlie 死循环
还有一种为for 循环,可以定义循环次数
例:
我要循环3次
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for i in range(3); 2 print(i)
如果我要循环10次
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for i in range(10): 2 print(i)
下面将上面的whlie循环改为for循环来看一下:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 # -*- coding:utf-8 -*- 2 guding = 50 3 #定义一个猜对了的固定数值 4 for i in range(3): 5 name = int(input("Please enter:")) 6 #这里给输入数值定义一个变量 7 if name > guding: 8 #判断输入的变量是否等于定义的固定数值(50) 9 print("A bit bigger!!!") 10 #上边的if判断如果为真则打印 11 elif name < guding: 12 #这里判断 输入的变量是否小于固定数值(50) 13 print("A little bit small!!!") 14 #如果输入变量小于固定数值则打印 15 else: 16 #如果上面判断都为假,则打印正确 17 #一个数值的对比有三种结果,一种大于,一种小于,一种等于,上面判断了大于和小于,如果都不是,那这里就为真 18 print("Bingo!") 19 break 20 #上面判断else 为真则 打印Bingo!并且跳出循环 21 else: 22 #这里for 循环后边也可以跟else 23 #此处的else 是表示当上面的条件(jishuqi < 3)不满足了while循环结束了,才会执行此处的else 24 #当上面的循环没有正常退出(上面的break)就跳出了所以就不会再执行此处的else 25 print("Too many retrys!!!")
本文来自博客园,作者:IT老登,转载请注明原文链接:https://www.cnblogs.com/nb-blog/p/5107562.html