条件控制允许程序根据不同的条件执行不同的代码块。在Python中,主要使用if、elif和else语句来实现条件控制。从Python 3.10开始,还引入了match...case语句,使条件判断更加简洁清晰。
1. if语句
if语句是最基本的条件控制结构,它根据条件表达式的真假来决定是否执行特定代码块。
🚀语法:
🎯示例:判断天气温度
temperature = float(input("请输入当前温度(摄氏度): "))if temperature < 0: print("非常冷,建议穿厚外套!")elif 0 <= temperature < 15: print("天气较冷,建议穿毛衣。")elif 15 <= temperature < 25: print("天气舒适,适合外出活动。")elif 25 <= temperature < 30: print("天气炎热,注意防晒。")else: print("非常热,建议待在室内。")
🔥执行示例:
请输入当前温度(摄氏度): 22天气舒适,适合外出活动。
2. if-elif-else结构
当需要判断多个条件时,可以使用if-elif-else结构。条件会按顺序检查,一旦某个条件为真,对应的代码块执行后,程序会跳过剩余的条件。
🌱示例:学生成绩等级评定
score = int(input("请输入学生成绩(0-100): "))if score >= 90: grade = "优秀"elif score >= 80: grade = "良好"elif score >= 70: grade = "中等"elif score >= 60: grade = "及格"else: grade = "不及格"print(f"成绩等级: {grade}")
⏩执行示例:
请输入学生成绩(0-100): 85成绩等级: 良好
3. if嵌套
在某些情况下,我们需要在条件判断中再嵌套条件判断,这就是if嵌套。
🌳示例:判断数字是否为偶数且能被3整除
num = int(input("请输入一个整数: "))if num % 2 == 0: print(f"{num} 是偶数") if num % 3 == 0: print(f"{num} 也能被3整除") else: print(f"{num} 不能被3整除")else: print(f"{num} 是奇数,不能被2整除")
📈执行示例:
请输入一个整数: 1818 是偶数18 也能被3整除
4. match...case 语句(Python 3.10+)
Python 3.10引入了match...case语句,使多条件判断更加清晰简洁,类似于其他语言的switch语句。
🚪语法:
match subject: case pattern_1: action_1 case pattern_2: action_2 case pattern_3: action_3 case _: action_default
🌟示例:根据水果名称判断价格
fruit = input("请输入水果名称: ").lower()match fruit: case "apple": price = 5.5 print(f"苹果价格: {price}元/斤") case "banana": price = 3.0 print(f"香蕉价格: {price}元/斤") case "orange": price = 4.8 print(f"橙子价格: {price}元/斤") case "watermelon": price = 2.5 print(f"西瓜价格: {price}元/斤") case _: print("抱歉,我们不销售这种水果。")
💥执行示例:
请输入水果名称: banana香蕉价格: 3.0元/斤
🔄示例:使用OR模式(|)匹配多个条件
fruit = input("请输入水果名称: ").lower()match fruit: case "apple" | "pear" | "grape": print("这些水果是水果店的特价商品!") case "banana" | "orange": print("这些水果是常规商品。") case _: print("抱歉,我们不销售这种水果。")
✨执行示例:
请输入水果名称: orange这些水果是常规商品。
5. 条件表达式
Python还提供了条件表达式(三元运算符),可以在一行中实现简单的条件判断。
🧗语法:
value_if_true if condition else value_if_false
🎨示例:判断年龄是否成年
age = int(input("请输入年龄: "))status = "成年" if age >= 18 else "未成年"print(f"年龄: {age}岁,状态: {status}")
💡执行示例:
6.总结:
if语句用于条件判断,当条件为True时执行相应代码块
else语句用于处理条件不满足的情况
elif语句可以处理多个条件分支
条件可以嵌套使用,处理更复杂的逻辑
条件表达式提供了简洁的写法
逻辑运算符(and, or, not)可以组合多个条件
Python使用缩进来表示代码块,缩进不一致会导致语法错误
条件表达式中的比较运算符要正确使用(==用于比较,=用于赋值)
match...case仅在Python 3.10及以上版本可用
在编写条件判断时,应考虑所有可能的情况,避免遗漏