python基础(二)、if 语句
发布日期:2021-05-20 07:49:55 浏览次数:20 分类:精选文章

本文共 2804 字,大约阅读时间需要 9 分钟。

if语句入门——条件测试与控制流程

在编程中,条件语句是执行逻辑判断的核心工具,最常用的就是if语句。它允许程序在执行代码时根据当前条件的结果采取不同的操作。这一机制的背后,是要么布尔表达式(True/False)的判断,要么基于特定条件进行的执行选择。以下将从基础到进阶,上手熟悉if语句及其扩展形式。


一个简单的示例

要理解if语句的作用,可以从最简单的示例入手。以下代码是一个经典的汽车列表遍历案例:

cars = ['audi', 'bmw', 'subaru', 'toyota']
for car in cars:
if car == 'bmw':
print(car.upper())
else:
print(car.title())

这个代码会遍历汽车列表中的每个汽车名。如果当前汽车名是'bmw',则将其转换为全大写并打印;否则,将其首字母大写并打印。示例输出如下:

Audi
BMW
Subaru
Toyota

这个案例的核心逻辑在于,通过检查条件car == 'bmw'来决定执行哪一部分代码。


条件测试的核心——布尔表达式

if语句中,每个条件都是一个布尔表达式,其结果只能是TrueFalse。布尔表达式可以来源于几个方面:

  • 相等性检查:使用==来判断两个值是否相等。例如:

    age = 18
    if age == 18:
    print("满18岁")
    else:
    print("未满18岁")

    这将判断用户是否已满足某个条件(如投票年龄)。

  • 不等性检查:数学中的不等于关系可以通过!=来表示。例如:

    favorite_color = 'red'
    if favorite_color != 'blue':
    print("你的颜色偏好不是蓝色")
  • 数字比较:这种检查可以用于类似实例中,例如验证用户输入的数字是否在特定范围内:

    answer = int(input("请输入数字:"))
    if answer < 0 or answer > 100:
    print("越界了!请重新输入。")
  • 列表包含检查:这里使用in关键字来判断某个元素是否存在于列表中。例如:

    toppings = ['木.tim','火腿','芝士']
    requested = '番茄'
    if requested in toppings:
    print("你的配料已经包含。")
  • 多条件复合判断:通过andor来组合多个条件,例如司机的年龄必须超过18岁并且有驾照才能进入车库:

    age = 20
    has_license = True
    if (age >= 18 and has_license):
    print("您可以进入车库。)

  • if-else语句的扩展

    if语句的基础上,else语句提供了一个后备选择。当某个条件测试为False时,else代码将执行。elif(Else If)语句使得代码可以检查多个条件,但只有第一个符合的条件才会执行相应代码。

    1. 组合多个条件

    要考虑多个条件的情况,使用elif在适当的时候可以提高代码的效率。例如,判断一个人是否患有某种疾病,需要检查体温、血压和某个特定指标:

    symptoms = {'体温': 37.5, '血压': 120/80, '咳嗽': True}
    user症状 = {'体温': 38, '血压': 130/85}
    if ('体温' in user症状 and user症状['体温'] > 37.5) or '咳嗽' in user症状:
    print("可能有感冒。)

    2. 只保留必要代码

    有时候,直接使用多个elif比单独的else更清晰。例如,在餐馆门票定价中,如果年龄不小于65岁则收取不同价位:

    def calculate_cost(age):
    if age < 4:
    return 0
    elif age < 18:
    return 5
    else:
    return 10

    一个重要的注意点是,else语句在if-elif结构中可选的,谨慎选择何种方式更符合逻辑。


    判断多个条件

    虽然if-elif-else结构适用于单一的条件满足时执行操作,但有时需要多次检查多个独立的条件。这种情况下,可以使用多个独立的if语句。例如,制作比萨时,需要分别打印每个顾客点的配料:

    requested_toppings = ['蘑菇', '番茄', '芝士']
    for topping in requested_toppings:
    if topping == '蘑菇':
    print("Adding蘑菇。")
    elif topping == '番茄':
    print("Adding番茄。")
    else:
    print("Adding" + topping + ".")

    这种写法虽然重复了,但能够保证每个条件都被准确处理。如果采用if-elif结构,将导致只有最后一个配料被处理。


    if的实际应用场景

    通过以上案例可以看出,if语句的应用场景十分广泛,涵盖了从简单的条件判断到复杂的逻辑控制流程。以下是一对常见情形的应用:

  • 数据验证:在用户提交数据前,程序需要进行多次检查。例如,验证用户名是否满足特定字符长度和范围:
  • username = input("请输入用户名:")
    if len(username) < 5 or len(username) > 20:
    print("用户名长度错误。)
    elif username.isnumeric():
    print("用户名不能包含数字。)
    else:
    print("注册成功!)
    1. 资源访问控制:根据用户权限来决定是否允许访问某些资源。例如,给予管理员超级权限。
    2. is_admin = False
      if username == 'admin':
      is_admin = True
      if is_admin:
      print("你可以访问管理界面。)
      1. 动态设置变量值:基于输入结果修改程序中的变量值,这在程序高效运行时非常实用。

      2. 总结

        if语句作为编程的核心逻辑控制结构之一,帮助程序在运行过程中做出决策。在实际编程中,不仅要掌握基础条件测试,还要熟练使用elif和多重条件组合,避免重复代码,同时根据任务需求选择适当的控制结构。如果需要处理复杂的逻辑判断,也可以考虑使用boolean表达式和exception捕捉机制。

        通过实际案例的练习、不断总结经验,你会逐渐掌握如何将if语句灵活运用到实际开发中,提升编程效率和代码质量。

    上一篇:python基础(三)、字典的创建和使用
    下一篇:python基础(十)、python解释器详解简介

    发表评论

    最新留言

    初次前来,多多关照!
    [***.217.46.12]2025年04月12日 14时30分25秒

    关于作者

        喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
    -- 愿君每日到此一游!

    推荐文章