
Python 布尔类型(Boolean)
布尔类型是Python中的基本数据类型之一,用于表示逻辑值。它只有两个值:
True- 表示真False- 表示假
1. 布尔值的基本使用
# 定义布尔变量
is_active = True
is_admin = Falseprint(is_active)  # 输出: True
print(is_admin)   # 输出: False
 
2. 布尔类型的本质
在Python中,布尔类型实际上是整数(int)的子类:
print(issubclass(bool, int))  # 输出: True
print(True == 1)   # 输出: True
print(False == 0)  # 输出: True
 
但要注意,True和1、False和0是不同的对象:
print(True is 1)   # 输出: False
print(False is 0)  # 输出: False
 
3. 布尔运算
Python提供了三种布尔运算符:
3.1 逻辑与 (and)
print(True and True)   # 输出: True
print(True and False)  # 输出: False
print(False and False) # 输出: False
 
3.2 逻辑或 (or)
print(True or True)    # 输出: True
print(True or False)   # 输出: True
print(False or False)  # 输出: False
 
3.3 逻辑非 (not)
print(not True)   # 输出: False
print(not False)  # 输出: True
 
4. 其他类型转换为布尔值
使用bool()函数可以将其他类型转换为布尔值:
# 数字
print(bool(1))    # 输出: True
print(bool(0))    # 输出: False
print(bool(-1))   # 输出: True# 字符串
print(bool("Hello"))  # 输出: True
print(bool(""))       # 输出: False# 列表
print(bool([1, 2, 3]))  # 输出: True
print(bool([]))         # 输出: False# None
print(bool(None))  # 输出: False
 
5. 布尔值的实际应用
5.1 条件判断
age = 18
if age >= 18:print("成年人")  # 会执行
else:print("未成年人")
 
5.2 while循环
count = 0
while count < 5:print(count)count += 1
 
5.3 简化条件表达式
name = "Alice"
greeting = name and f"Hello, {name}"
print(greeting)  # 输出: Hello, Alicename = ""
greeting = name and f"Hello, {name}"
print(greeting)  # 输出: "" (空字符串)
 
6. 注意事项
- Python中布尔值的首字母必须大写:
True和False,不能写成true或false - 在条件判断中,Python会将非布尔值自动转换为布尔值进行判断
 - 布尔运算有短路特性:
and和or运算符会提前终止计算 
# and运算短路示例
def check():print("函数被调用")return Trueprint(False and check())  # 输出: False (check()不会被调用)
