布尔类型 bool¶
布尔值¶
布尔类型只有两种类型真(True)和假(False),使用 bool() 内置函数可直接获取值的布尔类型。
False 值一共有如下几种:
-
定义为 False 的对象: None 和 False。
-
值为 0 的数字类型:
- 空的字符串序列和集合:
逻辑运算符¶
| 运算符 | 含义 |
|---|---|
| and | 左边和右边同时为True,结果为True |
| or | 左边和右边其中一个为True,结果为True |
| not | 如果操作数为True,结果为False,反之结果为True |
短路逻辑¶
Python 中 and 和 or 遵循短路逻辑:从左到右,只有当第一个操作数的值无法确定逻辑运算的结果时,才对第二个操作数进行求值。Python 不需要对逻辑运算结果全部求出,只需要根据逻辑运算符获取判断结果,没有必要全部求出,这就是短路逻辑。
| Python | |
|---|---|
运算符优先级¶
以下内容为由低到高排列。
| 优先级 | 运算符 | 描述 |
|---|---|---|
| 1 | lambda | lambda表达式 |
| 2 | if else | 条件表达式 |
| 3 | or | 布尔或 |
| 4 | and | 布尔与 |
| 5 | not | 布尔非 |
| 6 | in, not, in, is, is not,<, <=, >, >=, !=, == | 成员测试,同一性测试,比较 |
| 7 | | | 按位或 |
| 8 | ^ | 按位异或 |
| 9 | & | 按位与 |
| 10 | <<, >> | 移位 |
| 11 | +, - | 加法, 减法 |
| 12 | *, @, /, //, % | 乘法,矩阵乘法,除法,地板除,取余除 |
| 13 | +x, -x, +x | 正号,负号,按位翻转 |
| 14 | ** | 指数 |
| 15 | await x | await表达式 |
| 16 | x[index], x[index:index], x(arguments.....), x.attribute | 下标,切片,函数调用,属性引用 |
| 17 | (expressions....), [expressions.....], {key: value.....}, {expressions.....} | 绑定或元组显示,列表显示,字典显示,集合显示 |