当前位置:首页>python>第9课 Python 的运算符——逻辑运算符

第9课 Python 的运算符——逻辑运算符

  • 2026-10-11 06:15:52
第9课 Python 的运算符——逻辑运算符

各位Python初学者,上一节课我们学习了比较运算符,比较运算只会产出True、False两种布尔值。本节课学习逻辑运算符,作用是把多个比较条件组合在一起,实现多条件同时判断,是if、while循环必不可少的知识点。全文通俗易懂,包含独有特性、易错坑点、完整代码案例,零基础也能学会!

如果你多条件判断结果和预期不符,分不清and和or执行逻辑、搞不懂短路特性,欢迎在评论区留言提问;也可以分享自己写的练习代码,大家互相交流纠错!

一、逻辑运算符基础概念

1. 定义

逻辑运算符专门用来拼接多个布尔条件,运算结果依旧是布尔值 True 、 False。

适用场景:同时满足多个条件、满足任意一个条件、对条件结果取反。

2. 三大逻辑运算符总表

运算符

名称

核心规则

通俗解释

and

逻辑与

两边全为True,结果才是True;一个False整体为False

并且,所有条件必须同时成立

or

逻辑或

任意一边为True,结果就是True;两边全False才是False

或者,只要一个条件成立即可

not

逻辑非

取反,True变False,False变True

相反,颠倒判断结果

二、核心代码案例分步讲解

案例1:and 逻辑与(全部条件同时满足)

# 示例1:数字比较组合判断age = 20score = 85# 条件1:年龄≥18 并且 分数≥60res = age >= 18 and score >= 60print("成年且及格:", res)# 示例2:存在一个False,整体结果Falseres2 = age >= 18 and score >= 90print("成年且优秀:", res2)

运行输出:

成年且及格: True成年且优秀: False

案例2:or 逻辑或(满足任意一个即可)

weather = "下雨"weekend = False# 下雨 或者 周末,就不用出门跑步res = weather == "下雨" or weekend == Trueprint("不用跑步:", res)# 两个条件都不成立,结果才为Falseres2 = weather == "晴天" or weekend == Trueprint("不用跑步:", res2)


运行输出:

不用跑步: True不用跑步: False


案例3:not 逻辑非(结果取反)

flag = Trueprint(not flag)# 搭配比较运算使用age = 16# 条件:不是成年人res = not (age >= 18)print("未成年:", res)

运行输出:

False未成年: True

三、重点特殊知识点(Python独有短路机制,高频考点)

1. and 短路规则

从左向右判断,如果左边条件为 False,直接停止后续计算,直接返回False,不会执行右边代码。

# 左边10 > 20 结果False,右边代码不会运行num = 5res = 10 > 20 and num + 10print(res)

输出:False

2. or 短路规则

从左向右判断,如果左边条件为 True,直接停止后续计算,直接返回True,忽略右侧内容。

# 左边10 < 20 结果True,右侧代码不执行num = 5res = 10 < 20 or num + 10print(res)

输出:True

3. 逻辑运算符优先级(必考)

优先级从高到低:not > and > or

同级从左往右计算;想要改变运算顺序,用小括号 () 包裹条件。

# 不加括号:先算and,再算orprint(True or False and False)# 加括号:先算orprint((True or False) and False)

运行结果:

TrueFalse

4. 拓展:非布尔值参与逻辑运算(特殊用法)

and、or不仅能写布尔表达式,数字、字符串等数据也能参与运算,返回原值而非单纯True、False:

and:全为真值,返回最后一个值;遇到假值直接返回假值

or:遇到真值直接返回真值;全为假返回最后一个假值

# and演示print(3 and 5)    # 两个真值,返回后者5print(0 and 8)    # 0是假值,直接返回0# or演示print(3 or 5)     # 第一个为真,直接返回3print("" or "hi") # 空字符串为假,返回hi

输出:

503hi

四、结合if语句实战案例(项目常用写法)

# 需求:年龄18~60岁,且分数大于70,才能入职age = 25score = 78if age >= 18 and age <= 60 and score > 70:    print("符合入职条件")else:    print("不符合入职条件")

输出:符合入职条件

五、课后练习题(共3道,难度循序渐进)

第1题 基础逻辑判断

给定 x=18,y=75,直接打印以下逻辑运算结果:

1. x >= 18 and y >= 60

2. x < 16 or y > 80

3. not (x == 18)

第2题 优先级+短路综合题

1. 计算 False or True and False 并打印结果

2. 计算 (False or True) and False 并打印结果

3. 使用短路特性,观察 0 and 100、99 or "" 的输出

第3题 综合条件应用题

定义变量 height = 165,vip = False

需求:身高大于160 或者 是VIP,就可以免费游玩,用if语句实现,打印对应提示。


本节课逻辑运算符全部知识点讲解完毕,核心重点:and、or、not三条判断规则、短路特性、运算符优先级、非布尔值运算规则。逻辑运算是分支、循环结构的核心基础,一定要多加练习!

完成练习题的同学可以把代码粘贴在评论区,我帮你核对答案、排查逻辑错误;多条件判断混乱、短路机制看不懂的小伙伴都可以留言提问。下一节课我们学习位运算符,继续学习Python运算符体系!

最新文章

随机文章