版权声明: https://blog.csdn.net/qq_38351824/article/details/84337238
声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照书籍的实际顺序梳理,转载请注明出处。
作者:sumjess
一、程序的三种控制结构:
1、程序流程图:
因为本身很简单,同时图也不好画这里就直接上照片了。
2、程序控制结构基础:
顺序结构、分支结构、循环结构---后面有详解
3、程序控制结构扩展:
break、continue---后面有详解
break控制符用来结束当前循环。continue控制符用来结束当前循环的当次循环过程。
二、程序的分支结构:
因为该部分与C语言非常接近,所以在本段的最后用一个例题包含所有。
1、单分支结构 :if
(1)使用方式如下:
if <条件>:
<语句块>
其中,if、:和<语句块>前的缩进都是语法的一部分。
(2)<条件>是一个或多个条件,多个条件间采用and或or进行逻辑组合。and表示多个条件“与”的关系,or表示多个条件“或”的关系。
2、二分支结构 :if---else
(1)使用方式如下:
if <条件>:
<语句块1>
else:
<语句块2>
其中,if、else、:和<语句块>前的缩进都是语法的一部分。
(2)还有一种表达形式如下:
<表达式1> if <条件> else <表达式2>
3、多分支结构 :if---elif---else
使用方式如下:
if <条件1>:
<语句块1>
elif<条件2>:
<语句块2>
............
else:
<语句块N>
4、判断条件及组合 :
< 小于
> 大于
<= 小于等于
>= 大于等于
= 等于
!= 不等于
5、例题:
score = eval(input('请输入一个百分制成绩:'))
if score > 90.0:
grade = 'A'
elif score >=80.0:
grade = 'B'
elif score >=70.0:
grade = 'C'
elif score >=60.0:
grade = 'D'
else:
grade = 'E'
print("对应的五进制成绩是:{}".format(grade))
6、判断条件及组合:
(1)python语言中,任何非零的数值、非空的数据类型都等价于true,0或空类型等价于False,可以直接作用判断条件。
(2)python语言使用保留字not、and和or对条件进行逻辑运算组合。保留字not表示单个条件的“否”关系,and表示多个条件之间的“与”关系,or表示多个条件之间的“或”关系。
三、程序的循环结构:
1、遍历循环 :for
(1)使用方式如下:
for <循环变量> in <遍历结构>:
<语句块>
(2)对于字符串,可以逐一遍历字符串的每个字符,基本使用方式如下:
for <循环变量> in <字符串变量>:
<语句块>
for c in "pythonQQQ":
print(c)
(3)使用range()函数,可以指定语句块的循环次数,基本使用方式如下:
for <循环变量> in range(<循环次数>):
<语句块>
for c in range(10):
print(c)
(4)遍历循环还有一种扩展模式,基本使用方式如下:
for <循环变量> in <遍历结构>:
<语句块1>
else:
<语句块2>
当for循环正常执行后,才会执行else里面的语句内容。
2、无限循环 :while
(1)使用方式如下:
while <条件> :
<语句块>
n=0
while n<10:
print(n)
n=n+3
(2)while程序流程:
当程序执行到while语句时,判断条件如果为true,执行循环体语句,语句结束后返回再次判断while语句的条件;
当条件为false时,循环终止,执行与while同级别缩进的后续语句。
(3)无限循环也有一种使用保留字else的扩展模式,使用方式如下:
while <条件> :
<语句块1>
else:
<语句块2>
s,idx = 'PY',0
while idx<len(s):
print("循环执行中:"+s[idx])
idx += 1
else:
s="循环正常结束"
print(s)
3、循环控制 :break和continue
辅助循环控制的保留字:break和continue。
break用来跳出最内层for或while循环,脱离该循环后程序从循环后的代码继续执行。
while True:
s=input("请输入一个名字(按Q退出):")
if s == "Q":
break
for c in s:
if c == "E":
break
print(c,end="")
print("程序退出")
continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。
for s in "PYTHON":
if s == "Y":
continue
print(s,end="")
continue语句和break语句的区别是:continue语句只结束本次循环不终止整个循环的执行,而break具备结束循环的能力。
四、程序的异常处理:
python语言使用保留字try和except进行异常处理,基本的语法格式如下:
try:
<语句块1>
except:
<语句块2>
语句块1是正常执行的程序内容,当执行这个语句块发生异常时,则执行except保留字后面的语句块2。
try:
n=eval(input("请输入一个数字:"))
print("请输入数字的3次方值为:",n**3)
except:
print("输入错误,请输入一个数字!")
五、实例解析---猜数字游戏:
import random
target = random.randint(1,1000)
count = 0
while True:
try:
guess = eval(input('请输入一个猜测整数(1至1000):'))
except:
print('输入有误,请重试不计入猜测次数哦!')
continue
count = count + 1
if guess > target:
print('猜大了')
elif guess<target:
print('猜小了')
else:
print('猜对了')
break
print("此轮的猜测次数是:",count)