程序的控制结构及异常处理

程序的分支结构

  • 单分支结构:

if <条件> :

     <语句块>

  • 二分支结构:

if <条件>:

     <语句块1>

else:

       <语句块2>

guess = eval(input())
if guess == 99:
    print("guess right")
else:
    print("guess wrong")

紧凑形式:适用于简单表达的二分支结构,仅适用于表达式(比如说:简单的“对”或“错”)的使用而不适用于语句(比如说:赋值语句)的使用

<表达式1> if <条件> else <表达式2>

guess = eval(input())
print("猜{}了".format("对"if guess==99 else"错"))

多分支结构:

if <条件>:

          <语句块1>

elif:

          <语句块2>

else:

           <语句块3>

特别注意:条件之间的包含关系,多变量取值之间的覆盖关系,以保证程序的逻辑是正确的。

score= eval(input())
if score >= 90:
    grade = "A";
elif score >= 80:
    grade = "B";
elif score >= 70:
    grade= "C";
elif score>=60:
    grade="D";
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("猜对了")
  • 程序的异常处理:

try :

     <语句块1>

except:

      <语句块2>

将要执行的程序放在语句块1中,在运行的过程中如果程序出现了异常,就执行语句块2;如果不出现异常,就不执行语句块2,直接执行后续的语句。

try:

      <语句块1>

except<异常类型>:

        <语句块2>

只有当此类型的异常发生时才执行语句块2,异常类型的名字是python语言中自定义的,比如说:NameError

try:
    num=eval(input())
    print(num**2)
except:
    print("输入不是整数")

指定异常的类型:NameError型(标注异常类型后,仅响应该异常,异常类型名等同于变量)

try:
    num=eval(input())
    print(num**2)
except NameError:
    print("输入不是整数")

异常处理的高级使用:

try:

    <语句块1>

except:

      <语句块2>

else:

       <语句块3>

finally:

       <语句块4>

finally对应语句块4一定执行,else对应语句块3在不发生异常时执行。

首先执行语句块1,发生异常(except)执行语句块2,不发生异常(else)执行语句块3,无论是否发生异常(finally)都执行语句块4.

猜你喜欢

转载自blog.csdn.net/qq_31672701/article/details/88972188