目录
证书
为确保该篇文章内容的可靠性,先在此附上本人的二级Python语言程序设计证书加以证实。
③程序的控制结构
1. 程序的三种控制结构。
(1) 顺序结构:程序根据线性顺序而按序执行。
(2) 分支结构:程序根据条件判断结果而选择不同路径进行执行。
(3) 循环结构:程序根据条件判断结果而选择循环是否进行执行。
2. 程序的分支结构:
(1) 单分支结构:
if <条件>: <语句块> |
>>> if 2<4: print("wow") |
(2) 二分支结构:
if <条件>: <语句块1> else: <语句块2> |
>>> if 2>4: print("ha-ha") else: print("wow") |
<表达式1> if <条件> else <表达式2> | |
>>> "wow" if 2>4 else "ha-ha" |
(3) 多分支结构:
if <条件1>: <语句块1> elif <条件2>: <语句块2> … else: <语句块N> |
>>> if 2>4: print("ha-ha") elif 2==4: print("yoo-hoo") else: print("wow") |
3. 程序的循环结构:
(1) 遍历循环:使用保留字for实现遍历循环。
(a) 使用遍历循环对字符串的元素进行遍历操作:
for <循环变量> in <字符串或字符串变量名>: <语句块> | |
>>> for i in "奶茶": print(i, end="") 奶茶 |
>>> str="奶茶" >>> for i in str: print(i,end="") 奶茶 |
(b) 使用range()函数,可以指定语句块的循环次数。
for <循环变量> in range(<循环次数>): <语句块> |
>>> for i in range(0,6): print(i, end="") 012345 |
注:遍历循环还包括扩展模式,当for循环正常执行后,程序将继续执行else语句中内容。
for <循环变量> in <遍历结构>: <语句块1> else: <语句块2> |
>>> for i in "奶茶": print("正在制作中:"+i) else: i="奶茶做好啦!" print(i) 正在制作中:奶 正在制作中:茶 奶茶做好啦! |
(2) 条件循环:使用保留字while实现条件循环。
while <条件>: <语句块> |
>>> n=0 >>> while n<=6: print(n,end=" ") n+=2 0 2 4 6 |
注:条件循环还包括扩展模式,当while循环正常执行后,程序将继续执行else语句中内容。
while <条件>: <语句块1> else: <语句块2> |
>>> i,n="奶茶",0 >>> while n<len(i): print("正在制作中:"+i[n]) n+=1 else: i="奶茶做好啦!" print(i) 正在制作中:奶 正在制作中:茶 奶茶做好啦! |
4. 程序的循环控制:
(1) break循环控制:用于跳出最内层的循环,并且不可以继续执行剩下的循环体内语句。
>>> for i in "ha-ha": if i=="-": break print(i,end="") ha |
(2) continue循环控制:用于跳出当前当此循环,并且仍可以继续执行剩下的循环体内语句。
>>> for i in "ha-ha": if i=="-": continue print(i,end="") haha |
5. 程序的异常处理:try-except及异常处理类型。
(1) try-except:在分支结构的基础上,使用保留字try-except实现捕捉异常,有以下三种:
(a) try-except:
try: <检测范围> except: <若出现异常后的处理代码> |
try: n=eval(input("请输入一个数字:")) print("输入数字的平方为:",n**2) except: print("输入错误,请输入一个数字!") |
(b) try-except-else:
try: <检测范围> except: <若出现异常后的处理代码> else: <若无异常发生后的处理代码> |
try: n=eval(input("请输入一个数字:")) print("输入数字的平方为:",n**2) except: print("输入错误,请输入一个数字!") else: print("输入正确!") |
(c) try-except-finally:
try: <检测范围> except: <若出现异常后的处理代码> finally: <无论有无发生异常均将执行的代码> |
try: n=eval(input("请输入一个数字:")) print("输入数字的平方为:",n**2) except: print("输入错误,请输入一个数字!") finally: print("再接再厉!") |
(2) 异常处理类型:
KeyError: |
当访问的键不存在于字典中时,则触发该异常。 |
TypeError: |
当代码中的数据类型不匹配时,则触发该异常。 |
IndexError: |
当索引号超出列表类型长度时,则触发该异常。 |
NameError: |
当访问没有命名的变量时,则触发该异常。 |
SyntaxError: |
当有句法错误时,则触发该异常。 |
ZeroDivisionError: |
当除数等于零时,则触发该异常。 |
FileNotFoundError: |
当访问的文件不存在时,则触发该异常。 |