别被and/or坑哭了!Python逻辑运算符,90%新手都踩过这雷

发布时间:2026/7/22 4:04:14
别被and/or坑哭了!Python逻辑运算符,90%新手都踩过这雷 逻辑运算符全解析在编程里头, 逻辑运算符可是相当重要的工具, 它们被用来组合以及操作布尔值, 布尔值也就是True或者False, 其能帮我们构建极为复杂的条件判断。本文会详细地介绍逻辑运算符的基础概念, 还会介绍其使用方法, 也会介绍常见实践以及最佳实践, 目的在于帮助读者深入去理解并且高效地使用这些运算符。目录基础概念使用方法常见实践最佳实践小结参考资料基础概念中有三种主要的逻辑运算符以下是逻辑运算符的真值表使用方法and 运算符# 示例 1 x 5 y 10 result (x 3) and (y 15) print(result) # 输出: True # 示例 2 a 2 b 1 result2 (a 1) and (b 0) print(result2) # 输出: False於示例1裡, (x大於3)之中(x超過3)的這一表述是True, (y小於15)同樣是True, 因而(x大於3)且(y小於15)得出的結果是True。在示例2裡, (a小於1)為False, 按照and運算符的規則, 只要存在一個操作符為False, 那結果即為False, 所以(a小於1)以及(b大於0)最終返回的是False。or 运算符# 示例 3 m 3 n 7 result3 (m 5) or (n 10) print(result3) # 输出: True # 示例 4 p 1 q 0 result4 (p 0) or (q 0) print(result4) # 输出: False在示例3里头, (m大于5)这件事是假的, 然而(n小于10)这件事是真的, 按照or运算符的规定, 只要其中有一个操作数是真的, 那么结果便是真的, 既然如此, (m大于5)或者(n小于10)返回了真。在示例4当中, (p小于0)以及(q小于0)都是假的, 所以(p小于0)或者(q小于0)返回了假。not 运算符# 示例 5 r True result5 not r print(result5) # 输出: False # 示例 6 s False result6 not s print(result6) # 输出: True于示例5里, r呈现为True, not r针对其实施取反操作, 因而返回False。于示例6中, s是False, not s经取反之后返回True。常见实践条件判断逻辑运算符常用于 if 语句中进行复杂的条件判断。age 25 is_student True if (age 18) and is_student: print(你是一名成年学生。) else: print(你不符合条件。)这个例子里, 仅当age大于18是真的, 并且某个条件也要同时是真的, 这种情况下, 才会给出“你是一名成年学生。”这样一个语词内容被输出, 不然的话, 就会输出“你不符合条件。”。过滤列表元素可以使用逻辑运算符过滤列表中的元素。numbers [1, 5, 10, 15, 20] filtered_numbers [num for num in numbers if (num 5) and (num 15)] print(filtered_numbers) # 输出: [10]在这个例子里头, 运用列表推导式去筛选出, 列表当中大于5的元素, 并且是小于15的元素。最佳实践短路求值逻辑运算符取用的是那样一种短路求值的策略, 对于该 and 这个运算符而言, 要是第一个操作的数是 False 的状况, 那就绝不进去计算那第二个操作数针对于 or 这个运算符来讲, 要是第一个操作的数是 True 这样一种情况, 那就不会再去计算第二个操作数。靠利用这一特别的特性, 能够达成避免那种没有必要的计算。# 避免除零错误 numerator 10 denominator 0 if denominator ! 0 and (numerator / denominator) 2: print(结果大于 2。) else: print(无法计算或结果不大于 2。)在这个例子当中, 因为! 0 的结果是 False, 按照短路求值的相关规则, ( / ) 2 不会被计算, 进而避免了除零错误事件的发生。保持表达式简洁竭尽全力地去防止编写太过繁杂的逻辑表达式, 以此来避免对代码的可读性造成影响。能够把繁杂的表达式分解成多个简单的表达式, 并且运用变量来存储中间结果。# 复杂表达式 if (x 3) and (y 10) and ((z % 2 0) or (w 5)): pass # 拆分成多个简单表达式 condition1 x 3 condition2 y 10 condition3 z % 2 0 condition4 w 5 final_condition condition1 and condition2 and (condition3 or condition4) if final_condition: pass这样拆分后代码的可读性明显提高。小结本文对逻辑运算符的基础概念, 进行了详细介绍, 还阐述了其使用方法, 以及常见实践与最佳实践。逻辑运算符属于编程里不可缺少的工具, 经由合理运用它们, 可以构造起复杂的条件判断还有逻辑控制。在使用这些逻辑运算符的过程当中, 要留意其短路求值的特性, 并且要维持表达式的简洁性, 以此提高代码可读性和性能。