逻辑运算符,有and , or , not
and 表示并且,当用于条件判断的时候,第一个条件与第二个条件必须都成立,在能执行代码否则进入下一个代码块
a = 10
b = 20
if a > 5 and b < 30:
print("条件满足")
else:
print("条件不满足")
在判断真假时,and的两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
or 表示或者 在n个条件中只要有一个条件满足则执行代码,都不满足则进入下一个代码块
a = 5
if a == 3 or a == 5:
print("a 是 3 或者 5")
else:
print("a 既不是 3 也不是 5")
or判断真假时,or 两侧操作数均为 False, 最终结果为 False. 否则为 True. (一真则真)
not 表示逻辑取反,两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
a = True #设a为真
if not a: #在if表示如果条件成立则执行if那块代码
print("没下雨。") #不成立则执行else那块代码
else: #这里是用真True和假False来进行判断
print("在下雨。") #这里把a定为真,到if就变成了假,假不执行if的代码
#执行else
#真 执行代码,假 不执行
#因为a已经定死了所以结果只能为在下雨
设a为真
在if表示如果条件成立则执行if那块代码
不成立则执行else那块代码
这里是用真True和假False来进行判断
这里把a定为真,到if就变成了假,假不执行if的代码
执行else
真 执行代码,假 不执行
因为a已经定死了所以结果只能为在下雨
短路求值,是计算机运行代码的一种方式(在各种表达式的逻辑运算中都适用,不仅适用于真True假False)
对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.
对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.
因为第一个条件已经决定了整个式子的结果,没必要执行后面的条件,因为不执行后面的代码了,所以代码有语法等错误计算机也是不会报错的
赋值运算符
只要一个 = 用于赋值
赋值的方法
链式赋值:及多个变量同时赋值
a = b = 3
多元赋值:同时给多个变量分别进行赋值
a,b = 10,20
复合赋值运算符
包括 += 加 ,-= 减 ,*= 乘 ,/+ 除 ,%= 求余数(与算术运算符的意思相同)
+= 表示在原来的变量进行操作并把得到的值在赋值给这个变量
a = 10
+= a = a + 1 结果为 10+1=11 ,并把11赋值给a
-= a = a - 1 结果为 9
*= a = a * 1 结果为 10
/= a = a / 1 结果为 10
%= b = 7 % 2 结果为 1
其中 a += 1 等价于 a = a + 1
在a的基础上加1并把结果赋值给a
成员运算符
包括 ‘ in ’ ‘ not in ’
in 判断一个元素是在容器(列表,元组)内
‘ a ’ in ‘ abc ’ 输出True
not in 判断一个元素是否不在一个容器内
‘ d ’ not in ‘ abc ’ 输出True
身份运算符
包括 ’ is ‘ ’ not is ‘
is 判断两个对象是否为同一个对象(即是否具有相同的内存地址)
not is 判断两个对象是否不是同一个对象