PYTHON---if---elif---else---逻辑运算符

本文详细介绍了Python编程中if-elif-else语句的使用,包括条件判断和逻辑运算符的结合,阐述了如何通过这些结构实现复杂的逻辑控制。通过对示例的分析,读者将更好地理解Python中的条件分支和逻辑判断。
**if**
**elif**
**else**
 if 要判断的条件:
    条件成立的时候,要做的事情
 elif 条件2:
     条件2成立做的事情
 else:
     条件不成立的时候,要做的事情
 if和else语句以及各自的缩进部分都是一个完整的代码块
例题:
holidy_name = '中秋节'   
if holidy_name == '情人节': 
   print '买玫瑰' print '看电影'   
elif holidy_name == '圣诞节': 
   print '吃大餐'   
elif holidy_name == '生日': 
   print '吃蛋糕' print '买礼物'   
else: 
   print '每一天都是节日'
.....

**and**
 条件1 and 条件2
 两个条件同时满足,就返回True
 两个条件都不满足,返回False
  例题:
    
age = 180 
if age >= 0 and age <= 120: 
   print '年龄正确' 
else: 
   print '年龄不正确'

  .....

**or**
 条件1 or 条件2
 两个条件只要有一个满足,就返回True
 两个条件都不满足,返回False
  例题:
      
python_score = 20 ##定义变量 
c_score = 30 
if python_score > 60 or c_score > 60: ##判断条件 
   print '考试通过' 
else: 
   print '请继续努力‘

......

**if嵌套**
 if 条件1:
    条件1满足执行的代码
    if 满足条件1的基础上的条件2
       满足1,2条件执行的事情
 else:
    条件1不满足时,执行的代码  
 例题:
  
had_ticket = False ##定义布尔型变量 表示是否有车票   
knife_length = 16 ##定义变量表示刀的长度   
if had_ticket:  
   print '车票检查通过,准备开始安检'  
   if knife_length > 20: 
      print '长度为 %d:超出限定的长度,不允许进入' % knife_length  
   else: 
      print '长度为 %d:没有超过限定的长度,允许进入' % knife_length  
else:  
   print '请先买票'

 

### Python 中多个 `if-elif` 语句的用法 在 Python 编程中,`if-elif` 结构用于处理多条件分支逻辑。当有多个可能的情况需要评估时,可以依次测试这些情况直到找到第一个为真的条件并执行相应的代码块。 #### 基本语法结构 ```python if condition1: statement(s) elif condition2: statement(s) elif condition3: statement(s) else: statement(s) ``` 每条 `elif` 子句都依赖于前一条判断的结果;如果前面所有的条件都不成立,则会继续检查下一个 `elif` 条件。如果没有匹配到任何条件,默认情况下将执行最后的 `else` 分支(如果有定义的话)。[^1] #### 使用场景实例 假设有一个自动驾驶车辆控制系统,它基于当前车速调整行为模式: ```python speed = waypoint[2] # 获取航点的速度值 if speed < 0 or speed > max_speed_limit: print("Speed out of range") elif speed >= high_speed_threshold: drive_mode = "high" adjust_vehicle_for_high_speed() elif speed >= medium_speed_threshold: drive_mode = "medium" adjust_vehicle_for_medium_speed() elif speed >= low_speed_threshold: drive_mode = "low" adjust_vehicle_for_low_speed() else: stop_vehicle_safely() ``` 这段代码展示了如何根据不同范围内的速度设置不同的驾驶模式,并调用了相应的方法来适应特定行驶状态下的需求。 ### 多个 `if-elif` 语句的优化技巧 为了提高效率和可读性,在编写复杂的多重条件判断时应考虑以下几点建议: - **提前返回**:对于互斥的选择路径,可以在满足某个条件后立即采取行动并退出函数,从而减少不必要的后续比较操作。 - **简化表达式**:通过组合布尔运算符 (`and`, `or`) 或者利用集合成员资格检测等方式使条件更简洁明了。 - **优先级排序**:按照最有可能发生的情形排列顺序,这样能更快地命中目标而无需遍历整个列表。 例如,上述例子可以通过重构进一步精简: ```python def set_drive_mode(speed): if not (0 <= speed <= max_speed_limit): return "Speed out of range" modes = [ ("high", lambda: speed >= high_speed_threshold), ("medium", lambda: speed >= medium_speed_threshold), ("low", lambda: speed >= low_speed_threshold) ] for mode, check in modes: if check(): eval(f'adjust_vehicle_for_{mode}_speed()') return f"Set to {mode} speed." return stop_vehicle_safely() print(set_drive_mode(waypoint[2])) ``` 此版本不仅提高了性能还增强了灵活性,允许轻松添加新的模式而不必修改现有逻辑流程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值