程序的分支结构
>单分支结构
根据判断条件结果而选择不同向前路径的运行方式
if <条件>:
<语句块>
代码示例:
guess = eval(input()) if guess == 99: print("猜对了") if True: print("条件正确")
>二分支结构
根据判断条件结果而选择不同向前路径的运行方式
if <条件> :
<语句块1>
else :
<语句块2>
代码示例:
guess = eval(input()) if guess == 99: print("猜对了") else : print("猜错了") if True: print("语句块1") else : print("语句块2")
紧凑形式:适用于简单表达式的二分支结构
<表达式1> if <条件> else <表达式2>
代码示例:
guess = eval(input()) print("猜{}了".format("对" if guess==99 else "错"))
>多分支结构
if <条件1> :
<语句块1>
elif <条件2> :
<语句块2>
……
else :
<语句块N>
代码示例:
对不同分数分级的问题
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)) #注意多条件之间的包含关系 #注意变量取值范围的覆盖
>条件判断及组合
< 小于
<= 小于等于
>=
>
== 等于
!= 不等于
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("猜对了") if not True: print("语句块2") else : print("语句块1")
>程序的异常处理
异常处理的基本使用
try :
<语句块1>
except:
<语句块2>
try :
<语句块1>
except <异常类型>:
<语句块2>
示例1:
try : num = eval(input("请输入一个整数: ")) print(num**2) except : print("输入不是整数")
示例2:
try : num = eval(input("请输入一个整数: ")) print(num**2) except NameError: print("输入不是整数") #标注异常类型后,仅响应此类异常 异常类型名字等同于变量名
异常处理高级使用:
try : <语句块1> except : <语句块2> else : <语句块3> finally : <语句块4> #- finally对应语句块4一定执行 #- else对应语句块3在不发生异常时执行
程序的循环结构
>遍历循环
遍历某个结构形成的循环运行方式
for <循环变量> in <遍历结构>:
<语句块>
-从遍历结构中逐一提取元素,放在循环变量中
-由保留字for和in组成,完整遍历所有元素后结束
-每次循环,所获得元素放入循环变量,并执行一次语句块
遍历循环的应用:
计数循环(N次)
for i in range(N):
<语句块>
-遍历由range()函数产生的数字序列,产生循环
计数循环(特定次)
for i in range(M,N,K):
<语句块>
-例:
for i in range(1,6): print(i) #输出 #1 #2 #3 #4 #5
for i in range(1,6,2): print("Hello:",i)
输出
Hello:1
Hello:3
Hello:5
字符串遍历循环
for c in s:
<语句块>
-s是字符串,遍历字符串每一个字符,产生循环
for c in "Python123": print(c,end=",")
结果:P,y,t,h,o,n,1,2,3,
列表遍历循环
for item in ls :
<语句块>
-ls是一个列表,遍历其 一个元素,产生循环
for item in [123,"PY",456]: print(item,end=",")
123,PY,456,
文件遍历循环
for line in fi:
<语句块>
-fi是一个文件标识符,遍历其每行,产生循环
>无限循环
由条件控制的循环运行方式
while <条件>:
<语句块>
-反复执行语句块,直到条件不满足结束
>循环控制保留字
break和continue
-break跳出并结束当前循环,执行循环后的语句
-continue结束当此循环,继续执行后续次数循环
-break和continue可以与for和while循环搭配使用
>循环的高级用法
循环的扩展
循环与else
for <变量> in <遍历结构> :
<语句块1>
else:
<语句块2>
while <条件> :
<语句块1>
else:
<语句块2>
-当循环没有被break语句退出时,执行else语句块
-else语句块作为“正常”完成循环的奖励
-这里else的用法与异常处理中else用法相似
部分图片来自慕课https://www.icourse163.org/course/BIT-268001 若侵权请告知删除