在实际应用中,有时需要通过某个判断来决定任务是否执行或者执行的方式。对于这样的情况,仅有顺序结构控制是不够的,需要选择结构。
Python中的if语句实现了选择结构控制,还可以使用if-elif结构来实现多分支控制。与其他程序设计语言相比,Python中没有switch语句,但是可以通过其他方式获得类似switch语句功能的效果。
if语句单分支结构的语法形式如下:
if 条件表达式 :
语句/语句块
条件表达式详解:
在选择和循环结构中,条件表达式的值为 False的情况如下:
False、0、0.0、空值 None、空序列对象(空列表、空元祖、空集合、空字典、空字 符串)、空range 对象、空迭代对象。
其他情况,均为True。这么看来,Python所有的合法表达式都可以看做条件表达式,甚至 包括函数调用的表达式。
1 if 3: #整数作为条件表达式
2 print('OK')
3
4 a = [] #列表作为条件表达式,由于为空列表,是 False
5 if a:
6 print('空的列表为false')
7
8 b = True #布尔值
9 if b:
10 print('b')
11
12 c = 'false' #非空字符串,是True
13 if c:
14 print('c')
15
16 d = 10
17 if d:
18 print(d)
19
20 if 3<d<100: # 3 < d and d < 100
21 print('3<d<100')
a, b, c = eval(input('Please input a,b,c:')) max = a if b > max: max = b if c > max: max = c print('max =', max)
a, b = eval(input('Please input a,b:')) if a > b: a, b = b, a print(a, b) a, b = eval(input('Please input a,b:')) if a > b : a, b = b, a #注:if语句体内部如何只有一条语句,则可以写在一行上。强烈建议不要这样写 print(a, b)
- 选择结构概述
- 单分支结构
- 例1:事例代码
- 例2:利用单分支输出3个整数中的最大数
- 例3:两个数的排序(从小到大)