4.Python编程之控制结构

本文深入探讨了Python编程中的控制结构,包括if语句的各种构造,如简单条件和二分决策,以及多分之决策。异常处理机制的介绍和TryException.py示例展示了如何处理程序中的错误。文章还详细讲解了for循环的不同用法,如求平均数,无限循环,哨兵循环,以及在文件操作中的应用。此外,还介绍了嵌套循环,布尔表达式在决策中的作用,并通过壁球比赛积分例子解释了布尔代数的应用。
摘要由CSDN通过智能技术生成

程序基本程结构

  • 流程图

image.png

  • 三种程序设计基本结构

    • 顺序结构
    • 选择结构
    • 循环结构

image.png

image.png

image.png

image.png

简单分之

image.png

if语句格式

 语句格式如下
    if <condition>:
        <body>
     其中<condition>是条件表达式,<body>是一个或多个语个或多个语句序列。
 先判断<condition>条件:
     true,则执行<body>,再转向下一条语句;
     false,则直接跳过<body>,转向下一条语句;

image.png

简单条件构造

 简单条件基本形式
<expr> <relop> <expr>
     <relop>是关系操作符<, <=, ==, >=, >, !=
     使用“=”表示赋值语句,使用“==”表示等于
     除数字外,字符或字符串也可以按照字典顺序用于条
    比较
     <condition>是布尔表达式,为bool类型,布尔值
    真和假以字符True和False表示

二分之决策

image.png

 二分支语法结构如下:
    if <condition>:
        <statements>
    else:
        <statements>
 Python解释器首先评估<condition>
     如果<condition>是真的,if下面的语句被执行
     如果<condition>是假的,else下面的语句被执行。

多分之决策

 把一个复合语句放到另一个语句的结构之中称
为嵌套。下面是使用嵌套实现了三分支决策的
 多分支决策是解决复杂问题的重要手段之一
 一个三分支决策可以由两个二分支结构嵌套实现
 使用if-else描述多分支决策时,实现更多分支需要更多嵌套,影响程序的易读性
 Python使用if-elif-else描述多分支决策,简化分支结构的嵌套问题 

image.png

 使用if-elif-else描述多分支决策:

if <conditionl>:
    <casel1 statements>
elif <condition2>:
    <case2 statements>
elif <condition3>:
    <case3 statements>
......
else:
    <sefault statements>

 Python轮流评估每个条件,来寻找条件为True的分支,并
执行该分支下的语句;如果没有任何条件成立,else下面的
语句被进行,else子句是可选的。

异常处理机制

异常处理机制的引入

 如果处理错误或特殊情况的分支语句过多,那么处理正常
情况的主程序就会变得不清晰易读、
 以前面讲述的二次方程求解为例

discRt = otherSqrt(b*b-4*a*c)
    if discRt < 0:
        print("No real roots.")
    else:
        ...

 引入异常处理机制来解决程序运行时的错误,而不是显式
检查算法的每一步是否成功。

异常处理语句

 Python使用try…except…来进行异常处理,基本
格式如下:

    try:
        <body>
    except <ErrorType1>:
        <handler1>
    except <ErrorType2>:
        <handler2>
    except:
        <handler0>
当Python解释器遇到一个try语句,它会尝试执行
try语句体<body>内的语句
    如果没有错误,控制转到try-except后面的语句
    如果发生错误,Python解释器会寻找一个符合该错误
    的异常语句,然后执行处理代码

TryException.py

def main():
    try:
        number1,number2 = eval(input("Enter teo numbers,separated by a comma")
        result = number1 / number2

    except ZeroDivisionError:
        print("Division by zero!")

    except SyntaxError:
        print("A comma may be missing in the input")

    except:
        print("something wrong in the input")
    else:
        print("No exceptions,the result is ",result)
    fin
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值