流程控制: ```py 分支结构 if if...else... if...elif...else... if嵌套 if语法:if 条件: 缩进代码块 ... 所有if语句都可以根据需求决定选择是否有else结构,else结构 就是条件不满足的时候才去执行 elif结构可以根据需求出现多次,多用于并列条件(代码层方面 需要考虑条件的先后顺序,因为elif语句前面满足条件,后面不 再解释执行) if嵌套:内部条件判断与否取决于外层条件! ***多个条件相同判断标准用if...elif...elif....*** ***多个条件不同判断标准,前后有包含关系,用if嵌套结构*** ``` ```py 循环结构: while语法:while 条件 : 缩进循环体 while内部语法逻辑: step:1、满足条件,执行循环体,然后再去判断条件是否还满足 2、如果满足,再执行循环体,然后去判断条件是否还满足 3、如果不满足,结束循环体 重点: break:结束本层所属循环 continue:结束所属本层循环的本次循环,进入下次循环, continue后面的循环体不再执行。 ***难点 :循环嵌套*** 死循环:不能主动结束循环,想要结束只能通过break 0、[]、{}、None 可以被if、while这种需要条件的关键词转换 False,其他都是True ***while...else...else...分支会在while循环正常结束(没有 被break结束)时执行,continu结束时,会执行else!*** ``` ```python for循环结构:用来完成特定循环需求 语法:for 得到的循环结果 in 被循环的容器: 循环体 for执行逻辑: 第一次循环,循环得到的结果就是 被循环的容器的第一个值 第二次循环,循环得到的结果,会被 被循环容器第二个值赋值 以此类推... 注意:每次循环得到的结果不使用,下次循环将被覆盖,无法找 回。 当被循环容器中的值 给 被循环得到的结果 全部赋值一遍后,循 环自动结束 range():多配合for语句使用; 1. range(结束不被包含) 2. range(开始被包含, 结束不被包含) 3. range(开始被包含, 结束不被包含, 步长) ```
```python ''' 1.用if分支完成猜数字游戏 -- 先通过键盘输入一个数字算作出题 -- 在键盘输入答案 -- 正确:猜对 | 误差3以内:接近了 | 误差外小值:太小 | 误差外大值:太大 2.添加循环,让第1题可以循环完成多次猜字游戏 -- 一次循环完成一次出题和猜题 -- 当出题输入Q或q时结束游戏 3.在第二题基础上,完成一次出题可以最多进行三次猜题 -- 一次出题,进入猜题,猜对进入下一次出题 -- 猜错进入下一次猜题,最多错三次,三次全错自动进入下一次出题 ''' ``` ```PYTHON answer_value = int(input("您设置的答案是:")) guess_value = int(input("您猜的值是:")) if guess_value == answer_value : print("恭喜您一击即中!") elif abs(guess_value - answer_value) < 3 : print("您已经很接近了,加油!") elif guess_value - answer_value> 3: print("猜的太大了,往小了猜:") else : print("猜的太小了,往大了猜:") ``` ```python for i in range(3): answer_value = input("您设置的答案是:") if answer_value == "q"or answer_value == "Q": break guess_value =input("您猜的值是:") a = int(answer_value) g = int(guess_value) if a == g: n=i+1 print("恭喜您%d击即中!" % n) break elif abs(a - g) < 3 : print("您已经很接近了,加油!") elif (g - a)> 3: print("猜的太大了,往小了猜:") elif (a- g)> 3 : print("猜的太小了,往大了猜:") ``` ```python for i in range(3): answer_value = input("您设置的答案是:") if answer_value == "q"or answer_value == "Q": break guess_value =input("您猜的值是:") a = int(answer_value) g = int(guess_value) if a == g: print("恭喜您一击即中!" ) continue if abs(a - g) < 3: print("您已经很接近了,加油!") elif (g - a) > 3: print("猜的太大了,往小了猜:") elif (a - g) > 3: print("猜的太小了,往大了猜:") for k in range(3) : g=int(input("请继续猜:")) if a==g: print("恭喜您猜对了!") break if abs(a - g) <= 3 : print("您已经很接近了,加油!") continue if (g - a) > 3 : print("猜的太大了啦,往小了猜:") continue if (a - g) > 3: print("猜的太小了啦,往大了猜:") continue break ```