Python基础第一篇:分支结构(条件语句if、elif、else)

一、应用场景

条件语句是Python中的一种控制流语句,它允许程序根据不同的条件来执行不同的代码块。

  1. 条件分支:在程序中,当需要根据某个条件来做出不同的决策时,可以使用条件分支语句。例如,在一个游戏中,根据玩家的得分,可能需要显示不同的消息或者触发不同的事件。

  2. 循环控制:在循环结构中,可以使用条件语句来控制是否继续或跳出循环。例如,在对一个列表进行遍历时,可以使用条件语句来判断遇到某个特定元素时是否跳出循环。

  3. 异常处理:在Python中,异常是一种常见的错误处理机制。通过使用条件语句,可以根据不同类型的异常来处理和捕获异常。例如,在尝试打开文件时,如果文件不存在,则会引发FileNotFoundError异常,可以使用条件语句来捕获该异常并执行相应操作。

二、if语句的使用

if语句是Python中最基本和常见的条件语句之一,它通常用于根据特定条件来执行代码块。以下是if语句的使用方法:

if condition:
    # if block
else:
    # else block

其中,condition是要判断的条件表达式,如果它为True,则会执行if块中的代码,否则会执行else块中的代码。

在if语句中,else块是可选的,可以只有if块而没有else块。例如:

if score > 90:
    print("优秀")

上面的代码只有一个if块,如果分数大于90,则会输出 "优秀"。

除了简单的True / False条件判断外,if语句还可以使用比较运算符(==,!=,>,<,>=,<=)和逻辑运算符(and,or,not)等来组合多个条件。例如:

1、判断国籍

if age >= 18 and nationality == "China":
    print("您是中国成年人")
else:
    print("对不起,您未满18岁或不是中国公民")

上述代码中,如果年龄大于或等于18岁且国籍是中国,将输出 "您是中国成年人",否则将输出 "对不起,您未满18岁或不是中国公民"。

三、if+elif语句使用

1、if+elif语句是Python中常用的组合条件语句,用于根据多个条件来执行不同的代码块。如:

if condition1:
    # if block 1
elif condition2:
    # elif block 2
elif condition3:
    # elif block 3
else:
    # else block

其中,condition1是第一个要判断的条件表达式,如果它为True,则会执行if块中的代码;如果不是,则继续判断下一个条件表达式condition2,如果它为True,则会执行elif块中的代码;如果所有条件都不为True,则会执行else块中的代码。

2、在if、elif语句中,可以有任意多个elif块,但只能有一个if块和一个else块。例如:

score = 85
if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")

上面的代码中,如果分数大于等于90,则会输出 "优秀";如果分数大于等于80且小于90,则会输出 "良好";如果分数大于等于60且小于80,则会输出 "及格";如果分数小于60,则会输出 "不及格"。

为了方便理解,可以看下下面例子:

1、、将百分制成绩转换为等级制成绩

score = float(input('请输入成绩: '))
if score >= 90:
    grade = 'A'
elif score >= 80:
    grade = 'B'
elif score >= 70:
    grade = 'C'
elif score >= 60:
    grade = 'D'
else:
    grade = 'E'
print('对应的等级是:', grade)

3、分支结构嵌套与代码扁平化

一般不推荐,提倡代码扁平化,嵌套结构的嵌套层次多了之后会严重的影响代码的可读性,所以能使用扁平化的结构时就不要使用嵌套。

嵌套:

"""
分段函数求值
		3x - 5	(x > 1)
f(x) =	x + 2	(-1 <= x <= 1)
		5x + 3	(x < -1)
"""

x = float(input('x = '))
if x > 1:
    y = 3 * x - 5
else:
    if x >= -1:
        y = x + 2
    else:
        y = 5 * x + 3
print('f(%.2f) = %.2f' % (x, y))

要是上段代码扁平化我们可以这样修正

"""
分段函数求值

        3x - 5  (x > 1)
f(x) =  x + 2   (-1 <= x <= 1)
        5x + 3  (x < -1)
"""

x = float(input('x = '))
if x > 1:
    y = 3 * x - 5
elif x >= -1:
    y = x + 2
else:
    y = 5 * x + 3
print('f(%.2f) = %.2f' % (x, y))

四、使用条件注意事项

在使用if、elif语句时,需要注意以下几点:

  • 条件表达式可以是任何返回布尔值的表达式。
  • 可以有任意多个elif块,但只能有一个if块和一个else块。
  • 当一个条件为True时,程序将只执行该条件对应的代码块,并退出整个if语句。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值