Python逻辑运算符

Python语言反对逻辑运算符,以下假如变量 a 为 10, b为 20:

运算符逻辑表达式形容实例
andx and y布尔"与" - 如果 x 为 False,x and y 返回 x 的值,否则返回 y 的计算值。(a and b) 返回 20。
orx or y布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。(a or b) 返回 10。
notnot x布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。not(a and b) 返回 False
a = 10b = 20 if ( a and b ):   print ("1 - 变量 a 和 b 都为 true")else:   print ("1 - 变量 a 和 b 有一个不为 true") if ( a or b ):   print ("2 - 变量 a 和 b 都为 true,或其中一个变量为 true")else:   print ("2 - 变量 a 和 b 都不为 true") # 批改变量 a 的值a = 0if ( a and b ):   print ("3 - 变量 a 和 b 都为 true")else:   print ("3 - 变量 a 和 b 有一个不为 true") if ( a or b ):   print ("4 - 变量 a 和 b 都为 true,或其中一个变量为 true")else:   print ("4 - 变量 a 和 b 都不为 true") if not( a and b ):   print ("5 - 变量 a 和 b 都为 false,或其中一个变量为 false")else:   print ("5 - 变量 a 和 b 都为 true")
1 - 变量 a 和 b 都为 true
2 - 变量 a 和 b 都为 true,或其中一个变量为 true
3 - 变量 a 和 b 有一个不为 true
4 - 变量 a 和 b 都为 true,或其中一个变量为 true
5 - 变量 a 和 b 都为 false,或其中一个变量为 false

Python成员运算符

除了以上的一些运算符之外,Python还反对成员运算符,测试实例中蕴含了一系列的成员,包含字符串,列表或元组。

运算符形容实例
in如果在指定的序列中找到值返回 True,否则返回 False。x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in如果在指定的序列中没有找到值返回 True,否则返回 False。x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
a = 10b = 20list = [1, 2, 3, 4, 5 ] if ( a in list ):   print ("1 - 变量 a 在给定的列表中 list 中")else:   print ("1 - 变量 a 不在给定的列表中 list 中") if ( b not in list ):   print ("2 - 变量 b 不在给定的列表中 list 中")else:   print ("2 - 变量 b 在给定的列表中 list 中") # 批改变量 a 的值a = 2if ( a in list ):   print ("3 - 变量 a 在给定的列表中 list 中")else:   print ("3 - 变量 a 不在给定的列表中 list 中")
1 - 变量 a 不在给定的列表中 list 中
2 - 变量 b 不在给定的列表中 list 中
3 - 变量 a 在给定的列表中 list 中

Python身份运算符

身份运算符用于比拟两个对象的存储单元

运算符形容实例
isis 是判断两个标识符是不是援用自一个对象x is y, 相似 id(x) == id(y) , 如果援用的是同一个对象则返回 True,否则返回 False
is notis not 是判断两个标识符是不是援用自不同对象x is not y , 相似 id(a) != id(b)。如果援用的不是同一个对象则返回后果 True,否则返回 False。

▲注: id() 函数用于获取对象内存地址。

a = 20b = 20 if ( a is b ):   print ("1 - a 和 b 有雷同的标识")else:   print ("1 - a 和 b 没有雷同的标识") if ( id(a) == id(b) ):   print ("2 - a 和 b 有雷同的标识")else:   print ("2 - a 和 b 没有雷同的标识") # 批改变量 b 的值b = 30if ( a is b ):   print ("3 - a 和 b 有雷同的标识")else:   print ("3 - a 和 b 没有雷同的标识") if ( a is not b ):   print ("4 - a 和 b 没有雷同的标识")else:   print ("4 - a 和 b 有雷同的标识")
1 - a 和 b 有雷同的标识
2 - a 和 b 有雷同的标识
3 - a 和 b 没有雷同的标识
4 - a 和 b 没有雷同的标识

▲is 与 == 区别:
is 用于判断两个变量援用对象是否为同一个, == 用于判断援用变量的值是否相等。

参考:Python3 运算符|菜鸟教程