3.运算符
3.1 运算符优先级
逻辑运算符内部的优先级 not > and > or,实在搞不清楚,就加括号
if not 1 and 1 > 2 or 3 == 8:
print(“真的”)
else:
print("假的")
if not 1 and (1 > 2) or 3 == 8:
print(“真的”)
else:
print("假的")
3.2 面试题
逻辑运算中,and or
v1 = name == "alex" and pwd == "123"
# 运算过程
# v1 = True and Flase
# v1 = Flase
v2 = "wuleiei" and “alex”
# 第一步:把每个字符串的值转换为布尔值 -----> 转换后是True and True
# 第二步:判断本次操作取决于谁? -----> 取决于布尔值的后面那个值
# 第三步:后面的值是多少,结果就是多少,所以,结果就是alex
v3 = "" and "Alex"
# 空字符串转换为布尔值结果是 ----> Flase
# 第二步: 判断本次操作取决于前面的值,所以本次结果就是“” 空字符串
v4 = 1 or 8
# 第一步: 转换布尔值 True or True
# 第二步: 由于前面的值是True,or的逻辑关系中,只要有一个是True,结果就是True,所以取决于第一个值,结果就是1
v5 = 0 or 8
# 第一步: or运算符,由于前面是Flase,所以本次逻辑关系取决于后面的值
# v5 = 8
练习题
v1 = 1 or 2
v2 = -1 or 3
v3 = 0 or -1
v4 = 0 or 100
v5 = "" or 10
v6 = 'peipei' or ''
print(v1,v2,v3,v4,v5,v6)
## print(1,-1,-1,100,10,peipei)
v1 = 4 and 8
v2 = 0 and 6
v3 = -1 and 88
v4 = "" and 7
v5 = "peipei" or ”“
v6 = ”“ or 0
v7 = 0 and "中国"
print(v1,v2,v3,v4,v5,v6, v7)
print(8 0 88 0)