# 比较运算符
'''
运算符 描述 示例
== 判断相等。如果两个操作数的结果相等,则条件结果为真(True),否则条件结果为假(False) a=3,b=3,则(a==b)为True
!= 不相等。如果两个操作数的结果不相等,则条件结果为真(True),否则条件结果为假(False) a=1,b=3,则(a!=b)为True
> 运算符左侧操作数结果是否大于右侧操作数结果,如果大于,则条件结果为真(True),否则条件结果为假(False) a=7,b=3,则(a>b)为True
< 运算符左侧操作数结果是否小于右侧操作数结果,如果小于,则条件结果为真(True),否则条件结果为假(False) a=7,b=3,则(a<b)为False
>= 运算符左侧操作数结果是否大于等于右侧操作数结果,如果大于等于,则条件结果为真(True),否则条件结果为假(False) a=3,b=3,则(a>=b)为True
<= 运算符左侧操作数结果是否小于等于右侧操作数结果,如果小于等于,则条件结果为真(True),否则条件结果为假(False) a=3,b=3,则(a<=b)为True
'''
# 逻辑运算符
'''
运算符 逻辑表达式 描述 示例
and x and y 布尔“与”:如果x为False,它返回False,否则它返回y的值。 (都真为真)
or x or y 布尔“或”:如果x为True,它返回True,否则它返回y的值。 (都假才假)
not not x 布尔“非”:如果x为True,它返回False;如果x为False,它返回True。(相反值)
'''
# 表达式加括号,避免歧义
a = 0
b = 1
c = 2
print('—————————分割线—————————')
# 1. and 与:都真才真
print((a < b) and (c > b)) # True
print((a > b) and (c > b)) # False
# 1.1 只要有一个值为0,则结果为0,否则结果为最后一个非0数字
print('—————————分割线—————————')
# 2. or 或:都假才假
print((a < b) or (c > b)) # True
print((a > b) or (c > b)) # True
print((a > b) or (c < b)) # False
# 2.1只有所有值为0结果才为0,否则结果为第一个非0数字
print('—————————分割线—————————')
# 3. not 非:取反
print(not False) # True
print(not True) # False
print(not (c > b)) # False