Python中程序的基本结构

程序的基本结构

程序由3种基本结构组成:顺序结构、分支结构和循环结构。这些基本结构都有一个入口和一个出口。

顺序结构

顺序结构是程序按照线性顺序依次执行的一种运行方式。

分支结构

分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式。
(1)单分支结构:if语句
if<条件>:
  <语句块>
语句块是if条件满足后执行的一个或多个语句序列。
注意:
Python使用“=”表示赋值语句,使用“==”表示等于。
字符串比较本质上是字符串对应的Unicode编码的比较,字符串的比较按照字典顺序进行,英文大写字符对应的Unicode编码比小写字符小。

(2)二分支语句:if-else语句
if<条件>:
  <语句块1>
else:
  <语句块2>
还有一种简洁的表达方式:
<表达式1>if<条件>else<表达式2>
(3)多分支结构:if-elif-else语句
if<条件1>:
  <语句块1>
elif<条件2>:
  <语句块2>

else:
  <语句块N>
注意:
用反斜杠()将很长的一行分解为两行书写,对于Python解释来说,这是一行代码。

循环结构

根据循环执行次数的确定性,循环可以分为确定次数循环和非确定次数循环,确定次数循环成为“遍历循环”。
(1)遍历循环:for语句
for<循环变量>in<遍历结构>:
  <语句块>
遍历结构可以是字符串、文件、组合数据类型或range()函数,在这种扩展模式中,当for循环正常执行结束后,程序会继续执行else语句中的内容。else语句只有在循环正常执行并结束后才执行。
(2)无限循环:while语句
while<条件>:
  <语句块1>
else:
  <语句块2>
(3)循环保留字:break和continue
break用来跳出最内层for和while循环,脱离该循环后程序从循环代码后继续执行,每个break语句只有能力跳出当前层次循环。
continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环。
区别:continue语句只结束本次循环,而不终止整个循环的执行;break语句则是结束整个循环过程,不再判断执行循环的条件是否成立,continue保留字对else没有影响。

程序的异常处理

(1)try-expect语句实现
try:
  <语句块1>
except<异常类型>:
  <语句块2>
语句块1是正常执行的程序内容,当发生异常时执行except保留字后面的语句块。
(2)try-except语句可以支持多个except语句
try:
  <语句块1>
except<异常类型1>:
  <语句块2>

except<异常类型N>:
  <语句块N+1>
except:
  <语句块N+2>
(3)异常语句与else和finally保留字配合使用
try:
  <语句块1>
except<异常类型1>:
  <语句块2>
else:
  <语句块3>
finally:
  <语句块4>
当try中的语句块1正常执行结束且没有发生异常时,else中的语句块3执行;
finally语句块则不同,无论try中的语句块1是否发生异常,语句块4都会执行。