布尔型对象
一.布尔型对象简介
布尔型(bool)对象也被称为逻辑型对象。布尔对象类型只包含两个值,分别是 True 和 False,主要用于进行逻辑运算或者表示某种逻辑运算结果。
二.创建布尔对象
1. 基本创建
Python 中布尔值区分大小写,首字母必须大写。
python
# 首字母大写
True
2. 查看类型
使用 type() 函数查看类型,结果为 bool。
python
type(True)
输出:
bool
三.比较运算
比较运算是生成布尔型对象的常见表达式。
1. 常用比较运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
== |
检查两个操作数的值是否相等,如果是,则返回 True | a=3, b=3 →\rightarrow→ (a==b) 为 True |
!= |
检查两个操作数的值是否相等,如果不相等,则返回 True | a=1, b=3 →\rightarrow→ (a!=b) 为 True |
> |
检查左操作数是否大于右操作数的值 | a=7, b=3 →\rightarrow→ (a>b) 为 True |
< |
检查左操作数是否小于右操作数的值 | a=7, b=3 →\rightarrow→ (a<b) 为 False |
>= |
检查左操作数是否大于或等于右操作数的值 | a=3, b=3 →\rightarrow→ (a>=b) 为 True |
<= |
检查左操作数是否小于或等于右操作数的值 | a=3, b=3 →\rightarrow→ (a<=b) 为 True |
2. 实例演示
python
# 恒等操作符
a = 3
b = 3
a == b # 结果: True
# 不等操作符
a = 1
b = 3
a != b # 结果: True
# 大于/大于等于
a = 7
b = 3
a > b # 结果: True
a >= b # 结果: True
四. 逻辑运算
布尔型对象有一类独有的运算:逻辑运算。主要由最基础的 与 (and) 、或 (or) 、非 (not) 三种运算构成。
1. 逻辑运算符
| 运算符 | 逻辑表达式 | 描述 |
|---|---|---|
and |
x and y |
"与"运算 :如果 x 为 False,x and y 返回 False;否则它返回 y 的计算值。 |
or |
x or y |
"或"运算:如果 x 是 True,它返回 True;否则它返回 y 的计算值。 |
not |
not x |
"非"运算:如果 x 是 True,返回 False;如果 x 为 False,返回 True。 |
2. 实例演示
python
# 与运算
True and True # 结果: True
# 非运算
not False # 结果: True
# 复杂的逻辑判别表达式
(1 < 2) or (1 > 2) # 结果: True
五. 布尔型对象与数值型对象的对应关系
在 Python 中,数值对象 0 和 1 分别与 False 和 True 存在对应关系,但它们本质上属于不同的对象。
1. 恒等关系 (==)
数值上的相等性判断:
1 == True返回True0 == False返回True
python
1 == True # True
0 == False # True
2. 参与逻辑运算
数值型对象可以直接参与逻辑运算,遵循以下规则:
- 在
or或and中,如果结果取决于数值,则直接返回该数值(如0或1)。 not运算会返回布尔值。
python
1 or False # 结果: 1 (因为1被视为真值,or运算直接返回1)
not 0 # 结果: True (0被视为假值,取反为True)
3. 本质区别 (is vs ==)
==判断值是否相等。is判断两个参数的身份(即是否为同一个对象)或类型。
尽管值相等,但 int 和 bool 是不同的类型/对象:
python
int is int # True (类型相同)
int is bool # False (类型不同)
1 is True # False (值相等,但一个是整数对象,一个是布尔对象)