逻辑运算
and or not
and 与
连接左右两个条件,当两个条件都成立时才为True(全真为真,有假则假)
快速判断方法:全部为and的情况下,如果判断到为假,后面的就不用看了,就是假,全真才真。
or 或
连接左右两个条件,只要一个条件成立,所有条件都成立(有真为真,全假为假)。
快速判断方法:全部都是or的情况下,如果判断到位后面都是or就没必要看了,就是真,全部为假才是假
not 非
将紧跟的那个条件取反
在Python中,逻辑运算符的优先级如下:
not
(非) - 优先级最高and
(与) - 其次or
(或) - 优先级最低
这意味着在没有括号的情况下,not
运算符会首先被计算,然后是 and
,最后是 or
。
以下是一个展示这些优先级的代码示例:
# 定义一些布尔变量
x = True
y = False
z = True
# 使用与或非运算符的示例
result1 = x or y and not z # 这相当于 x or (y and (not z))
result2 = (x or y) and not z # 使用括号改变优先级
# 打印结果
print("result1:", result1) # 输出 True,因为 x 是 True,所以 or 表达式为 True
print("result2:", result2) # 输出 False,因为 (x or y) 是 True,而 not z 是 False,所以 and 表达式为 False
在这个例子中,result1
的计算遵循了优先级规则,其中 not z
首先被计算为 False
,然后 y and False
计算为 False
,最后 x or False
计算为 True
。result2
通过使用括号改变了表达式的计算顺序,首先计算 x or y
为 True
,然后计算 not z
为 False
,最后计算 True and False
为 False
。