程序的分支结构
- 单分支结构:
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.