03 分支结构

1.流程控制

根据代码执行过程不同,可以将代码的结构分为三种:

  1. 顺序结构(默认): 代码从上往下按顺序依次执行,并且每一条语句只执行一次
  2. 分支结构(if): 根据条件选择性的执行代码
  3. 循环结构(for/while): 让代码重复执行

2.分支结构

1) if单分支结构 - 如果xxx就xxx

a. 应用场景: 满足条件才执行某个操作,条件不满足的时候这个操作就不执行
b. 语法:

if 条件语句:
    代码段
  • 说明:
    if - 关键字 固定写法
    条件语句 - 可以是任何有结果的表达式
    : - 固定写法(注意必须是英文输入法的冒号)
    代码段 - 结构上,就是和if保持一个缩进的一条或者多条语句(至少一条)
    逻辑上,就是满足条件才会执行的代码

c. 执行过程
先判断条件语句是否为True,如果是,就执行代码中的代码,否则就不执行

  • 案例:
age = 19
# 根据age的值打印'成年'
if age >= 18:
    print('成年')

2) if双分支结构 - 如果xxx就xxx否则就xxx

语法:

if 条件语句:
    代码段1(满足条件会执行的代码)
else:
    代码段2(条件不满足时会执行的代码)
  • 案例: 根据age的值打印’成年’或者’未成年’
age = 16
if age >= 18:
    print('成年')
else:
    print('未成年')

3)if多分支结构 - 根据不同的条件做不一样的事情(如果xxx就xxx,如果xxx就xxx,如果xxx就xxx…)

  • 方法1
if 条件语句1:
    代码段1
if 条件语句2:
    代码段2
if 条件语句3:
    代码段3
...
  • 方法2 - 根据不同条件做不同的事情,并且其中一个条件如果成立了其他的条件一定不会成立的情况(反之使用方法1)
if 条件语句1:
    代码段1
elif 条件语句2:
    代码段2
elif 条件语句3:
    代码段3
...
else:
    代码段N
执行过程:判断条件1是否成立,如果成立就执行代码段1,然后整个结构结束(后面的条件不再判断);如果条件1不成立才判断条件2是否成立(后面的条件是在前面的条件不成立的情况下进行的;所有的条件都不成立的时候执行else中的代码)
  • 案例: 让百分制分数转换成ABCD四个等级。A(>=90)、B[80,90)、C[60,80)、D(<60)
# 方法1
score = 69
if score >= 90:
    print('A')
if 80 <= score < 90:
    print('B')
if 60 <= score <80:
    print('C')
if score < 60:
    print('D')

# 方法2
score = 54
if score >= 90:
    print('A')
elif score >= 80:
    print('B')
elif score >= 60:
    print('C')
else:
    print('D')

特别注意:

当条件语句不是标准的条件(结果不是布尔值的表达式),这个时候判断条件语句是否成立的原则·看条件语句对应的表达式的结果转换成布尔是否是True

num = 34
#if 0: -> if False:if num % 2:
print('aaa1')

num = 35
# if 1:-> if True:if num % 2:
print('aaa2')

str1 = 'ac'
if str1 != '':  
print('不是空串')

str1 = 'ac'
if str1:      #if 'ac':  -> if True:
print( '不是空串')

3.分支结构简写

if 条件语句: 代码段(只有一条语句的时候)

总结:冒号换行一个缩进后面的代码如果只有一天语句,那么唯一的这条语句可以直接放在冒号的后面

age = 19
# 单分支结构简写
if age >= 18: print('成年')

# 双分支结构简写
if age >= 18: print('成年')
else: print('未成年')

# 多分支结构简写
if age <= 3: print('幼儿')
elif age <= 12: print('儿童')
elif age < 18: print('青少年')
else: print('成年')

4.三目运算符

  1. C语言的三目运算符:
    条件?值1:值2 - 判断条件语句是否为真,如果是整个运算表达式的结构是值1,否则是值2
    a = age>=18?“成年”:“未成年”

  2. Python三目运算符
    值1 if 条件 else 值2 - 判断条件语句是否为真,如果是整个运算表达式的结构是值1,否则是值2

age = 9
result = '成年' if age > 18 else '未成年'
print(result)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值