Python布尔值

2025 年 5 月 9 日 | 阅读 9 分钟

Python 布尔值是内置数据类型之一。它用于表示表达式的真值。例如,表达式3 <= 5 的结果是True,而表达式2 == 4 的结果是False

Python 布尔类型

Python 中的布尔类型只有两个可能的值:

  • true
  • False

属于布尔数据类型的变量属于'bool'类,如下面的示例所示:

示例

立即执行

输出

True -> <class 'bool'>
False -> <class 'bool'>

说明

在此示例中,我们初始化了几个带有布尔值(True 和 False)的变量,并使用 type() 函数返回它们的类型。结果是,这些变量属于“bool”类。

注意:用布尔值初始化的变量必须大写。小写值(如 true 或 false)将引发 NameError 异常。

评估变量和表达式

可以使用 Python 的 bool() 函数来评估变量和值。此函数允许我们使用标准的测试真理方法将值转换为布尔值 - True 或 False。

Python bool() 函数

在 Python 中,bool() 函数用于将值或表达式转换为其对应的布尔值,即TrueFalse。此函数的语法如下所示:

语法

在这里,'value' 参数可以是任何需要转换为布尔值的 Python 对象。如果省略,则函数默认为 False。

让我们来看一个简单的示例如下:

示例

立即执行

输出

0 -> False
0.0 -> False
1 -> True
-5 -> True
'' -> False
'Tpoint Tech' -> True
[] -> False
[11, 12, 13] -> True
() -> False
(11, 12, 13) -> True
{} -> False
{11, 12, 13} -> True
None -> False

说明

在上面的示例中,我们使用 bool() 函数将不同 数据类型(如 数字字符串列表元组集合 和 None 类型)的指定值转换为其相应的布尔值。结果是,数值(如 0 和 0.0)以及空序列和 None 类型返回False,而其他值分别转换为True

Python中的布尔运算符

在 Python 中,布尔运算符用于对布尔表达式执行逻辑运算。它们根据逻辑关系返回 True 或 False。

Python 中主要有三个布尔运算符:

运算符名称描述
并且布尔与运算如果两个操作数都为真,则此运算符返回 True。
布尔或运算如果至少有一个操作数为真,则此运算符返回 True。
not布尔非此运算符反转布尔值。

让我们通过示例来理解以下运算符。

布尔 AND 运算符

当两个操作数都为真时,布尔 AND 运算符返回 True。如果其中任何一个输入为假,则表达式将返回 False

以下真值表表示 AND 运算符的工作原理:

ABA 和 B
truetruetrue
trueFalseFalse
FalsetrueFalse
FalseFalseFalse

以下是布尔 AND 运算符的一个简单示例:

示例

立即执行

输出

True and True => True
True and False => False
False and True => False
False and False => False
5 > 2 and -4 < 0 => True
0 > 1 and 6 < 8 => False

说明

在这里,我们使用 AND 运算符执行了各种操作。此示例表明,只有当两个条件都为真时,布尔 AND 运算符才返回 True;否则,它返回 False

布尔 OR 运算符

如果至少有一个操作数为真,则布尔 OR 运算符返回 True。如果两个操作数都为假,则结果将为 False

以下真值表表示 OR 运算符的工作原理:

ABA 或 B
truetruetrue
trueFalsetrue
Falsetruetrue
FalseFalseFalse

以下是布尔 OR 运算符的一个简单示例:

示例

立即执行

输出

True or True => True
True or False => True
False or True => True
False or False => False
-4 > 2 or -7 < 0 => True
4 > 6 or 9 < 4 => False

说明

在上面的示例中,我们使用 OR 运算符执行了各种操作。在这里,我们可以清楚地看到,如果至少有一个条件为真,布尔 OR 运算符就返回 True。只有当两者都为假时,它才返回 False

布尔 NOT 运算符

布尔 NOT 运算符是一个只需要一个参数(操作数)并返回其否定的布尔运算符。这意味着,对于 False,此运算符返回 True;反之亦然。

以下真值表表示 NOT 运算符的工作原理:

A非 A
trueFalse
Falsetrue

让我们看一个 Python 中 NOT 运算符的简单示例:

示例

立即执行

输出

not 0 => True
not (6 > 1) => False
not True => False
not False => True

说明

在此示例中,我们可以观察到布尔 NOT 运算符已反转了给定操作数的真值。因此,对于真表达式,它返回 False;对于假表达式,它返回 True

Python 中的布尔相等 (==) 和不等 (!=) 运算符

Python 中的相等 (==)不等 (!=) 运算符用于比较值并确定它们之间的相等性或不相等性。这些运算符根据比较结果返回布尔值,即TrueFalse

相等 (==) 运算符检查两个值是否相同。如果值相等,则此运算符返回 True;否则返回 False。

不等 (!=) 运算符检查两个值是否不同。如果值不相等,则此运算符返回 True;如果值相等,则返回 False。

让我们看一个示例,说明这些运算符在 Python 中的工作原理。

示例

立即执行

输出

8 == 8) => True
(True == 1) => True
(False == 0) => True
(6 == -4) => False

(8 != 6) => True
(True != 1) => False
(False != 0) => False
(4 != 4) => False

说明

在此示例中,我们可以观察到,当两个值相等时,相等运算符返回 True,而当它们不相等时,不等运算符返回 True

Python 'is' 运算符

Python 中的'is'运算符用于检查两个变量是否指向内存中的同一个对象。此运算符不检查它们是否具有相同的值。

以下是一个演示 Python 中'is'运算符用法的示例:

示例

立即执行

输出

a is b => True
a is c => False

说明

a is b 的情况下,'is' 运算符返回 True,因为两个变量都指向同一个对象。而在 a is c 的情况下,它返回 False,因为两个变量指向具有相同值但不同的对象。

Python 'in' 运算符

Python 中的'in'运算符用于检查一个值是否存在于容器中,例如列表、元组、字符串、字典或集合。

让我们看一个 Python 中'in'运算符的示例:

示例

立即执行

输出

17 in int_list => True
19 in int_list => False

apple in fruits => True
banana in fruits => False

t in sample_str => True
q in sample_str => False

说明

在上面的示例中,我们可以观察到'in'运算符用于检查给定元素是否存在于给定的列表、集合或字符串中。结果是,如果找到,则返回 True,否则返回 False。

结论

Python 布尔值使用 TrueFalse 表示真值,并且对于代码中的决策至关重要。使用andornot等布尔运算符,我们可以构建逻辑表达式。Python 还使用inis==!=等其他运算符进行比较,使布尔逻辑成为编写清晰、有效程序的关键。

Python 布尔值选择题

1. 以下代码的输出将是什么?

  1. true
  2. False
  3. Error

答案: b) False


2. 仅当两个条件都为 True 时,哪个运算符才返回 True?

  1. 并且
  2. not
  3. ==

答案:a) and


3. 'is' 运算符检查什么?

  1. 两个值是否相等
  2. 两个值的类型是否相同
  3. 两个变量是否指向同一个对象
  4. 一个变量是否存在

答案:c) 两个变量是否指向同一个对象


4. 下列代码的输出是什么?

  1. true
  2. False
  3. Error

答案: b) False


5. 下列哪项将返回 True?

  1. 5 != 5
  2. [] is []
  3. bool(0)
  4. 'p' in 'purple'

答案:d) 'p' in 'purple'


下一主题Python If-else