Python入门教程第14篇 逻辑运算符

Posted 不剪发的Tony老师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python入门教程第14篇 逻辑运算符相关的知识,希望对你有一定的参考价值。

本篇我们将会学习 Python 逻辑运算符,以及如何使用它们组合多个判断条件。

逻辑运算符

有些时候我们想要一次检查多个判断条件,为此可以使用逻辑运算符(logical operator)。

Python 支持以下三种逻辑运算符:

  • and
  • or
  • not

逻辑与(and)运算符

逻辑与(and)运算符用于检查两个条件是否同时为 True:

a and b

如果两个条件都为 True,返回 True;如果任何一个条件为 False,返回 False。

以下示例使用 and 运算符组合了两个比较 price 的条件:

>>> price = 9.99
>>> price > 9 and price < 10
True

结果返回了 True,因为 price 大于 9 并且小于 10。

以下示例返回了 False,因为 price 没有大于 10:

>>> price > 10 and price < 20
False

以上示例中的 price > 10 返回了 False,第二个条件 price < 20 返回了 True。

下表列出了 and 运算符组合两个条件时的结果:

aba and b
TrueTrueTrue
TrueFalseFalse
FalseTrueFalse
FalseFalseFalse

从上表中可以看出,只有两个条件都为 True 时表达式 a and b 才会返回 True。

逻辑或(or)运算符

与 and 运算符类似,逻辑或(or)运算符也可以检查多个判断条件。不同之处在于,只要有一个条件为 True,or 运算符就会返回 True;否则,返回 False:

a or b

下表列出了 or 运算符组合两个条件时的结果:

aba or b
TrueTrueTrue
TrueFalseTrue
FalseTrueTrue
FalseFalseFalse

只有当两个条件都为 False 时,or 运算符才会返回 False。

以下示例演示了 or 运算符的作用:

>>> price = 9.99
>>> price > 10 or price < 20
>>> True

在以上示例中,price < 20 结果为 True,因此整个表达式返回了 True。

以下示例返回了 False,因为两个条件都为 False:

>>> price = 9.99
>>> price > 10 or price < 5
False

逻辑非(not)运算符

逻辑非(not)运算符用于将后面的判断条件取反,True 变成 False,False 变成 True。

not a

如果判断条件为 True,not 运算符返回 False;反之亦然。

下表列出了 not 运算符的结果:

anot a
TrueFalse
FalseTrue

以下示例使用了 not 运算符,因为 price > 10 结果为 False,所以 not price > 10 返回 True:

>>> price = 9.99
>>> not price > 10
True

以下示例将 not 运算符和 and 运算符进行了组合:

>>> not (price > 5 and price < 10)
False

在以上示例中,Python 按照以下顺序计算表达式的值:

  • 首先,(price > 5 and price < 10) 返回 True。
  • 然后,not True 返回 False。

以上示例涉及了一个重要的概念,称为逻辑运算符的优先级。

逻辑运算符的优先级

当我们同时在一个表达式中混合使用了不同的逻辑运算符,Python 将会按照一定的优先级执行这些运算。

以下是逻辑运算符的优先级:

OperatorPrecedence
notHigh
andMedium
orLow

Python 基于以上优先级将不同的操作数分组运算,优先级最高的最先执行,然后依次执行优先级更低的操作。

如果多个逻辑运算符的优先级相同,Python 将会按照从左至右的顺序进行计算:

表达式等价表达式
a or b and ca or (b and c)
a and b or c and d(a and b) or (c and d)
a and b and c or d((a and b) and c) or d
not a and b or c((not a) and b) or c

总结

  • 使用逻辑运算符组合多个判断条件。
  • Python 支持 3 种逻辑运算符:and、or 以及 not。
  • 逻辑运算符的优先级从高到低依次为:not、and 以及 or。

以上是关于Python入门教程第14篇 逻辑运算符的主要内容,如果未能解决你的问题,请参考以下文章

《MongoDB入门教程》第09篇 逻辑运算符

《MongoDB入门教程》第09篇 逻辑运算符

Python入门教程第13篇 比较运算符

第14篇-Python中的Elasticsearch入门

超简单的Python教程系列——第14篇:异步

FPGA代码一位半加器入门-第2篇