一、程序的分支结构
1.单分支结构
根据判断条件结果而选择不同向前路径的运动方式
if :
示例:
guess =eval(input())if guess == 99:print("猜对了")
2.二分支结构
2.1常规形式
根据判断条件结果而选择不同向前路径的运动方式
if :
else:
示例:
guess =eval(input())if guess == 99:print("猜对了")else:print("猜错了")
2.2紧凑形式
适用于简单表达式的二分支结构
if else
示例:
guess = eval(input("请输入:"))print("猜{}了".format("对" if guess == 99 else "错"))
3.多分支结构
if :
elif:
......
else:
示例:
#对不同分数分级的问题
score = eval(input("请输入数字:"))if score >= 60:
grade= "D"
elif score >= 70:
grade= "C"
elif score >= 80:
grade= "B"
elif score >= 90:
grade= "A"
print("输入成绩属于级别{}".format(grade))
-注意多条件之间的包含关系
-注意变量取值范围的覆盖
-分支结构是程序的 重要框架,读程序先看分支
4.条件判断及组合
4.1操作符
操作符
数学符号
描述
<
<
小于
<=
≤
小于等于
>
≥
大于等于
==
=
等于
!=
≠
不等于
4.2用于条件组合的三个保留字
操作符及使用
描述
x and y
两个条件x和y的逻辑与
x or y
两个条件x和y的逻辑或
not x
条件X的逻辑非
示例:
guess = eval(input("请输入数字:"))if guess == 99 or guess < 99:print("猜对了")else:print("猜错了")
5.程序的异常处理
5.1异常处理的基本使用
try:
except:
try:
except :
示例1:
try:
num= eval(input("请输入一个整数:"))print(num**2)except:print("输入不是整数")
示例2:
try:
num= eval(input("请输入一个整数:"))print(num**2)except NameError: #标注异常类型后,仅响应该异常;异常类型名字等同于变量。
print("输入不是整数")
5.2异常处理的高级使用
try:
except:
else:
finally:
-finally对应语句块4一定执行
-else对应语句块3在不发生异常时执行
6.小结
-单分支if 二分支if-else及紧凑形式
-多分支 if-elif-else及条件之间的关系
-not and or > >= == <=
-异常处理 try-except-else-finally
二、程序的循环结构
1.遍历循环
遍历某个结构形成的循环运行方式
for in :
-由保留字for和in组成,完整遍历所有元素后结束
-每次循环,所获得元素放入循环变量,并且、执行一次语句块
1.1 遍历循环的应用
1.1.1计数循环(N次)
for i in range(N):
-遍历由range()函数产生的数字序列,产生循环
示例:
for i in range(5):
print(i,end=" ")
>>>1 2 3 4 5
1.1.2字符串遍历循环
for c in S:
-S是字符串,遍历字符串每个字符,产生循环
示例:
for c in "python123":
print(c,end=",")
>>>p,y,t,h,o,n,1,2,3,
1.1.3列表遍历循环
for item in ls :
-ls是一个列表,遍历其每个元素,产生循环
示例:
for item in [123,"py",456] :
print(item,end=",")
>>>123,py,456,
1.1.4文件遍历循环
for line in fi :
-fi是一个文件标识符,遍历其每行,产生循环
示例:略
2.无限循环
由条件控制的循环运行方式
while :
-反复执行语句块,直到条件不满足时结束
示例:
a=3
while a >0:
a = a-1
print(a,end=",")
>>>2,1,0
3.循环控制保留字
break 和 continue
-break跳出并结束当前整个循环,执行循环后的语句
-continue结束当次循环,继续执行后续次数循环
-break和continue可以与for和while循环搭配使用
示例:
continue的使用:
#continue的使用
for c in "python":
if c == "t":
continue
print(c,end="")
>>>pyhon,
break的使用:
#break的使用
for c in "python":
if c == "t":
break
print(c,end="")
>>>py
循环嵌套:
s = "python"
while s != "":
for c ins :
print(c,end="")
s = s[:-1]
>>>pythonpythopythpytpyp
s = "python"
while s != "":
for c ins :
if c == "t":
break #break仅跳出当前最内层循环
print(c,end="")
s = s[:-1]
>>>pypypypypyp
4.循环的高级用法
循环与else
for与else搭配
while与else搭配
for in :
else:
while :
else:
-当循环没有被break语句退出时,执行else语句块
-else语句块作为"正常"完成循环的奖励
-这里else的用法与异常处理中else的用法相似
示例:
continue结束当次循环
#continue结束当次循环
for c in "python":
if c == "t":
continue
print(c,end="")
else:
print("正常退出")
>>>pyhon正常退出
break结束当前整个循环
#break结束当前整个循环
for c in "python":
if c == "t":
break
print(c,end="")
else:
print("正常退出")
>>>py
5.小结
-for...in 遍历循环:计数、字符串、列表、文件...
-while无限循环
-continue和break保留字:退出当前循环层次
-循环else的高级用法:与break有关