别被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这样拆分后代码的可读性明显提高。小结本文对逻辑运算符的基础概念, 进行了详细介绍, 还阐述了其使用方法, 以及常见实践与最佳实践。逻辑运算符属于编程里不可缺少的工具, 经由合理运用它们, 可以构造起复杂的条件判断还有逻辑控制。在使用这些逻辑运算符的过程当中, 要留意其短路求值的特性, 并且要维持表达式的简洁性, 以此提高代码可读性和性能。

相关新闻

国产替代加速,六岳微电子完成5亿元A轮融资

国产替代加速,六岳微电子完成5亿元A轮融资

近日,北京六岳微电子科技有限公司(简称“六岳微”)宣布完成5亿元A轮融资,创下国内DSP(数字信号处理器)赛道A轮最大融资纪录。本轮融资由广东粤科、惠州国投、长沙时空、广州工控、广州科控、广州兴聚、先导…

2026/10/4 18:05:44 阅读更多 →
掌握html空格代码,轻松搞定文本空格布局

掌握html空格代码,轻松搞定文本空格布局

在HTML里, 打入多个空格字符的核心办法是运用实体, 运用实体办法时用多个空格字符是最基本且直接的方式, 同时还可借助CSS样式, 以及预格式化文本标签。在这些办法当中, 运用实体是最基本和直接的途径。先说为了做进一步的解释, 再说实体于HTML里代表着一个不可破的空格这一情况…

2026/10/9 6:48:05 阅读更多 →
CSP202509B. 水印检查 满分题解

CSP202509B. 水印检查 满分题解

大家好,今天我们来看CSP202509B. 水印检查这道题目题目要求在一幅 nn 的灰度图像中,找出所有可能的阈值 k(0 到 L-1 之间的整数),使得按这个阈值二值化后,图像中存在一个 59 的子区域,其黑白像素…

2026/10/8 8:59:12 阅读更多 →

最新新闻

AWC 0017 Beta题单复盘:贪心、DP与线段树全解析

AWC 0017 Beta题单复盘:贪心、DP与线段树全解析

这周刷了一套 AWC 0017 Beta 的题单,从 A 到 E 五题完整走了一遍。先说结论:这是一场难度梯度非常舒服的周赛题单,A 题考的是最基础的取模与整数溢出意识,B 题是差分数组的板子题,C 题是经典的“截止日期 奖励最大化”…

2026/10/14 17:20:44 阅读更多 →
具身智能学习路径全解析:从仿真环境搭建到真机部署的完整实操指南

具身智能学习路径全解析:从仿真环境搭建到真机部署的完整实操指南

1. 具身智能学习路径到底在学什么第一次听到“具身智能”这个词,很多人脑子里浮现的可能是科幻电影里那种能跑能跳、能跟你对话的机器人。这个联想不算错,但只对了一半。具身智能的核心不在“机器人”这三个字上,而在于“具身”这两个字——智…

2026/10/14 17:20:44 阅读更多 →
Delphi 12 FMX TListView 跨平台渲染原理与实战调优

Delphi 12 FMX TListView 跨平台渲染原理与实战调优

简介:本资源是面向Delphi中级开发者的一套FMX跨平台UI实战源码包,聚焦FireMonkey框架下ListView组件的深度应用与定制开发,解决多平台界面一致性、数据动态展示及交互体验优化等核心问题。压缩包共224个文件,含100个Pas单元文件&a…

2026/10/14 17:20:44 阅读更多 →
MiniMax H3与Qwen Image 2.1实测:ComfyUI工作流搭建与显存优化指南

MiniMax H3与Qwen Image 2.1实测:ComfyUI工作流搭建与显存优化指南

1. 这波模型更新到底香在哪最近圈子里讨论度最高的两件事,一个是 MiniMax H3 的发布,另一个是 Qwen Image 2.1 在 BFS(Best Face Similarity,人脸相似度最优)上的表现。我第一时间在自己的机器上把两个模型都跑了一遍&…

2026/10/14 17:20:44 阅读更多 →
JVM线上急救指南:内存泄漏、GC异常与线程阻塞实战定位

JVM线上急救指南:内存泄漏、GC异常与线程阻塞实战定位

1. 这不是调参手册,而是一份JVM现场急救指南你有没有遇到过这样的场景:线上服务突然响应变慢,接口平均耗时从200ms飙升到2秒;GC日志里Full GC频率从一天1次变成一小时3次;服务器CPU持续95%以上,但应用日志里…

2026/10/14 17:20:44 阅读更多 →
卡牌出牌规划与DP优化:权值线段树从O(n²)到O(nK log m)实战

卡牌出牌规划与DP优化:权值线段树从O(n²)到O(nK log m)实战

最近在写一个卡牌对战游戏的战斗模拟器时,栽在了一个看起来很简单的最优出牌规划上:牌堆从左到右一张张翻,你可以打出也可以跳过,但打出的卡牌等级必须不降,而且整个战斗最多打K张牌。攻击力显然要尽量高,所…

2026/10/14 17:19:42 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →