趋近智
Python 能够处理多种类型的数据,包括数字(例如 42 和 3.14)和文本(例如 "Hello, Python")。然而,程序常常需要表示更简单的状况,例如某个事物是真还是假、某个条件是否满足或是否存在特定状态。为此,Python 提供了布尔数据类型。
布尔类型以发明布尔代数的乔治·布尔命名,在编程逻辑中起着重要作用。它只有两个可能的值:
TrueFalse请注意大小写。True 和 False 是 Python 中的保留关键字,表示这些特定的布尔值。你不能使用 true 或 false(小写)。
你可以像为数字或字符串赋值一样,将这些值赋给变量:
is_learning = True
is_finished = False
print(is_learning)
print(is_finished)
运行此代码将输出:
True
False
这些变量 is_learning 和 is_finished 现在持有布尔值。它们在你的程序中充当简单的标记或开关。
虽然你可以直接赋值 True 或 False,但布尔值通常是比较运算的结果。当你使用比较运算符(我们之前讨论过)如 ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)或 <=(小于等于)时,结果总是一个布尔值。
看这些例子:
age = 20
is_adult = age >= 18 # 年龄是否大于或等于18?
print(is_adult) # 输出:True
temperature = 15.5
is_cold = temperature < 10.0 # 温度是否小于10.0?
print(is_cold) # 输出:False
name = "Alice"
is_bob = name == "Bob" # 名字是否等于"Bob"?
print(is_bob) # 输出:False
在每种情况中,赋值运算符 (=) 右侧的表达式会首先被求值。比较产生 True 或 False,然后该结果被存储在变量中。比较与布尔结果之间的这种直接联系是程序行为控制的依据。
布尔值是 Python 中决策制定的基本组成部分。它们与逻辑运算符(and、or、not)广泛结合使用,以组合多个条件。例如,你可能想检查用户是否既已登录又拥有管理员权限。
logged_in = True
is_admin = False
# 'and' 要求两边都为 True,结果才为 True
can_access_admin_panel = logged_in and is_admin
print(can_access_admin_panel) # 输出:False
# 'or' 要求至少一边为 True,结果才为 True
can_view_content = logged_in or is_admin
print(can_view_content) # 输出:True
# 'not' 反转布尔值
is_guest = not logged_in
print(is_guest) # 输出:False
我们将在本章后面更仔细地查看逻辑运算符。它们是构建更复杂条件的必备工具,在通过 if 语句(在下一章中介绍)控制程序流程时,你将频繁使用它们。
Python 有一个实用的思想,常被称为“真值”。在需要布尔值的上下文(例如 if 语句,你很快就会学到)中,Python 可以将其他类型的值评估为“真值”(表现得像 True)或“假值”(表现得像 False)。
以下值在 Python 中被认为是假值:
False 本身。None(表示值的缺失)。0、0.0)。""[](){}set()**Python 中几乎所有其他值都被认为是真值。**这包括非零数字、非空字符串、包含元素的列表等等。
为什么这很有用?它允许进行简洁的检查。例如,与其使用 len(my_list) > 0 来检查列表 my_list 是否有超过零个元素,你通常可以直接写 if my_list:,因为非空列表是真值,而空列表是假值。
items = []
if items: # items 为空,所以它是假值
print("列表中有元素。")
else:
print("列表为空。") # 这将被打印
user_name = "Charlie"
if user_name: # user_name 不为空,所以它是真值
print(f"你好,{user_name}!") # 这将被打印
else:
print("用户名缺失。")
count = 0
if count: # count 为 0,所以它是假值
print("计数为正数。")
else:
print("计数为零。") # 这将被打印
虽然 True 和 False 是显式的布尔值,但理解真值有助于解释 Python 如何在条件逻辑中做出判断。这种隐式的布尔评估使得 Python 代码通常更具可读性和紧凑性。
布尔值简单但很重要。它们使程序能够表示状态(True/False),通过比较和逻辑运算符评估条件,并最终做出决策,构成编程逻辑的中心部分。在构建根据输入或内部状态做出不同反应的程序时,你会发现自己会持续使用它们。
这部分内容有帮助吗?
True/False)、其特性以及Python中各种数据类型的“真值测试”(truthiness)规则提供了权威解释。© 2026 ApX Machine Learning用心打造