乐趣区

关于python:Python自学笔记运算符

Python 逻辑运算符

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

运算符 逻辑表达式 形容 实例
and x and y 布尔 ” 与 ” – 如果 x 为 False,x and y 返回 x 的值,否则返回 y 的计算值。 (a and b) 返回 20。
or x or y 布尔 ” 或 ” – 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔 ” 非 ” – 如果 x 为 True,返回 False。如果 x 为 False,它返回 True。 not(a and b) 返回 False
a = 10
b = 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 = 0
if (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 = 10
b = 20
list = [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 = 2
if (a in list):
   print ("3 - 变量 a 在给定的列表中 list 中")
else:
   print ("3 - 变量 a 不在给定的列表中 list 中")

1 – 变量 a 不在给定的列表中 list 中
2 – 变量 b 不在给定的列表中 list 中
3 – 变量 a 在给定的列表中 list 中

Python 身份运算符

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

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

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

a = 20
b = 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 = 30
if (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 运算符 | 菜鸟教程

退出移动版