什么是分支结构呢?在我们学习或者生活中出现的一些例子比如:数学的流程图,账号、密码的正确性问题等这些问题都属于分支结构 。
一、分支结构涉及到的Python关键字:
if、else、elif
二、语法:单分支结构(二选一)、多分支结构(多选一)
1、单分支结构
举例 ->
# 登录注册功能
username = 'zs'
password = '123456'
if username == 'zs' and password == '123456':
print('登录成功')
else:
print('登录失败')
语法:
if 条件(布尔值):
代码块1
else:
代码块2
👆 如果if后面的条件成立(True),执行代码块1;反之,执行代码块2。
※ 练习1:判断一个年份是否是闰年,输出平年或者闰年。
year = 2040
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
print('闰年')
else:
print('平年') # 闰年
※ 练习2:判断一个人是否成年。
age = 17
if age >= 18:
print('你是个大人啦!')
else:
print('你还是个小屁孩!') # 你还是个小屁孩!
2、多分支结构
举例 ->
# 0~100的成绩:划分为A、B、C、D、E
score = 66
if score >= 90:
print('A')
elif score >= 80 and score < 90:
print('B')
elif score >= 70 and score < 80:
print('C')
elif score >= 60 and score < 70:
print('D')
else:
print('E') # D
语法:
if 条件1:
代码块1
elif 条件2:
代码块2
……
else:
代码块N
※ 练习: 用多分支结构判断是否是闰年。
year = 2040
if year % 4 == 0 and year % 100 != 0:
print(f'{year}是闰年')
elif year % 400 == 0:
print(f'{year}是闰年')
else:
print(f'{year}是平年') # 2040是闰年
3、三目运算符
举例 ->
# 判断一个人是否成年。
age = 19
if age >= 18 :
print('成年')
else:
print('未成年') # 成年
- 三目运算符是对单分支结构的简写,但是并不是所有的单分支结构都可以简化为三目运算符,上述例子如下所示转换为三目运算符。
语法:
结果1 if 条件 else 结果2
age_1 = 20
result_1 = '成年' if age_1 >= 18 else '未成年'
print(result_1) # 成年
执行顺序:判断条件是否成立,成立返回结果1,反之返回结果2。
三、分支结构的简写
只需要判断是不是偶数时,单分支结构与多分支结构可以忽略掉else不写。
num = 12
if num % 2 == 0:
print('偶数') # 偶数
四、嵌套分支
即分支结构里面再来一个分支结构。
(可以筛选一个大条件,在里面的分支结构再进行细分。)
age_2 = 70
if age_2 >= 18:
if age_2 >= 60:
print('老年')
else:
print('成年')
else:
print('未成年') # 老年