- Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块
if/if else/if elif
- if之后"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行
- 可以只有if语句而无else或者elif语句
- 语句具有优先级,前面的语句先执行
- 各条件语句需要互斥
- 可以将判断条件和执行语句写在同一行,提高可读性
if 判断条件:
执行语句……
else:
执行语句……
if 判断条件1:
执行语句1……
elif 判断条件2:
执行语句2……
elif 判断条件3:
执行语句3……
else:
执行语句4…
if x==5: c=5
elif x==6: c=6
elif x==7: c=7
elif x==8: c=8
else :c=8
if语句嵌套
if 表示式:
if 表达式:
代码块
[elif 表达式
代码块]
[else:
代码块]]
[elif 表达式
if 表达式:
代码块
[elif 表达式
代码块]
[else:
代码块]]
[else:
if 表达式:
代码块
[elif 表达式
代码块]
[else:
代码块]]
三目运算
- exp1 if contion else exp2
- 如果 condition 成立(结果为真),就执行 exp1,并把 exp1 的结果作为整个表达式的结果;如果 condition 不成立(结果为假),就执行 exp2,并把 exp2 的结果作为整个表达式的结果。
- m = a if a>b else b的含义是:
如果 a>b 成立,就把 a 作为整个表达式的值,并赋给变量 m;
如果 a> b 不成立,就把 b 作为整个表达式的值,并赋给变量 m。
三目运算符的嵌套
- a if a>b else c if c>d else d 即为a if a>b else ( c if c>d else d )
- 类似于其它语言的case语句比较直观
c = (5 if x==5 else
6 if x==6 else
7 if x==7 else
8 if x==8 else
9)
等同于:
c = (5 if (x == 5) else (6 if (x == 6) else (7 if (x == 7) else (8 if (x == 8) else 9))))