Python AND 运算符

2025年6月2日 | 阅读 5 分钟

'and' 运算符是 Python 中的一个逻辑运算符,用于组合两个或多个条件。当所有条件都为 True 时,此操作返回 布尔值 True;否则,返回 False

Python 'and' 运算符的语法如下

语法

如果条件 condition_1 和 condition_2 都为 True,则此操作返回 True。但如果其中一个条件为 False,或者两者都为 False,结果将为 False。因此,我们可以说,'and' 操作必须所有条件都为 True 才能返回 True。

AND 操作的流程图

我们将通过以下流程图直观地了解 Python 中 'and' 运算符的工作原理。

Python AND Operator

流程图的分步解释

步骤 1: 计算表达式 X and Y(整体逻辑条件)

步骤 2: 检查 X 的值(第一个操作数)

  • 如果 X == False,则表达式 X and Y 立即返回 False,并且 Y 将不会被评估(短路行为)。
  • 如果 X == True,Python 会检查第二个操作数 Y

步骤 3: 检查 Y 的值(第二个操作数)

  • 如果 Y == True,结果为 True
  • 如果 Y == False,结果为 False

Python AND 运算符的真值表

表达式 1表达式 2结果
FalseFalseFalse
FalsetrueFalse
trueFalseFalse
truetruetrue

Python AND 运算符与布尔表达式

Python 的 'and' 运算符通常用于组合多个布尔表达式(计算结果为 True 或 False 的表达式)。当我们使用 'and' 运算符时,整个表达式仅当所有表达式都评估为 True 时才返回 True。如果至少一个表达式为 False 或所有表达式都为 False,则返回 False。

以下是一个示例,展示了 Python 'and' 运算符与布尔表达式的用法

示例

立即执行

输出

Boolean Expression 1: True
Boolean Expression 2: True
Boolean Expression 3: False
True and True = True
True and False = False

说明

在上面的示例中,我们给出了一些布尔表达式。我们使用 'and' 运算符来组合多个表达式。对于第一个操作,两个值都为 True,因此结果也为 True。但是,在第二种情况下,我们有一个 False 值,这使得我们的结果为 False。

Python AND 运算符在 if 语句中的应用

我们可以在 if 语句中使用 'and' 运算符来一次检查多个条件。整个 if 条件仅当由 and 连接的所有条件都为 True 时才评估为 True。

让我们看下面的例子。

示例

立即执行

输出

8 is NOT divisible by 6.
18 is divisible by 6.
33 is NOT divisible by 6.
72 is divisible by 6.

说明

在此示例中,我们定义了一个名为 is_divisible_by_six() 的函数,该函数接受一个参数 num。在此函数内部,我们在 if 语句中使用了 'and' 运算符来检查传递的参数是否能被 2 和 3 整除。然后,我们调用 check_number() 来检查不同的数字,例如 8、18、33 和 72。

结果是,如果 if 语句中指定的两个条件都为 True,则执行 if 块内的 print() 函数;否则,执行 else 块。

Python AND 运算符 - 短路

Python 中,短路是指当表达式的真值已经确定时,布尔运算的执行停止。

对于 'and' 运算符,如果第一个操作数或布尔表达式为 False,Python 将不会检查第二个操作数,因为整个表达式已经为 False。

现在让我们看下面的例子

示例

立即执行

输出

Inside the 'False' function
Case 1:  False

Inside the 'False' function
Case 2:  False

Inside the 'True' function
Inside the 'False' function
Case 3:  False

Inside the 'True' function
Inside the 'True' function
Case 4:  True

说明

在这里,我们定义了两个函数 true() 和 false()。在这些函数内部,我们返回了布尔值 True 和 False。然后,我们在调用期间使用 'and' 运算符来组合这些函数。

结果是,我们可以看到当第一个操作数为 False 时,Python 如何进行短路。

结论

在本教程中,我们通过各种示例了解了 Python 'and' 运算符。我们讨论了如何将 'and' 运算符与布尔表达式和 if 语句一起使用。最后,我们讨论了短路如何影响 Python 'and' 运算符的执行流程。

Python AND 运算符常见问题解答

1. Python 中的 'and' 运算符做什么?

'and' 运算符是一个逻辑运算符,仅当两个操作数都为 True 时才返回 True。否则,它返回 False。

示例

立即执行

输出

True
False

2. 'and' 运算符可以与非布尔值一起使用吗?

可以。Python 返回第一个假值,如果所有值都是真值,则返回最后一个操作数。

示例

立即执行

输出

0
10

3. 'and' 支持短路吗?

是的。Python 会在找到结果后立即停止评估。

示例

立即执行

输出

Else Block

4. and 在 if 语句中如何使用?

用于检查多个条件

示例

立即执行

输出

You can drive

5. and 和 & 在 Python 中有什么区别?

  • and: 逻辑运算符(用于布尔值)
  • &: 位运算符(用于整数/位级操作)

示例

立即执行

输出

False
1

下一个主题Python OR 运算符