Python 有8种运算符:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
- 成员运算符
- 身份运算符
- 三目运算符
赋值运算符
Python 赋值运算符主要用来为变量(或常量)赋值,在使用时,既可以直接用基本赋值运算符“=”将右侧的值赋给左侧的变量,右侧也可以在进行某些运算后再赋值给左侧的变量。
a = 21 b = 10 c = 0 c = a + b print("c 值为:", c) # 31 c += a print("c 值为:", c) # 52 c *= a print("c 值为:", c) # 1092 c /= a print("c 值为:", c) # 52.0 c = 2 c %= a print("c 值为:", c) # 2 c **= a print("c 值为:", c) # 2097152 c //= a print("c 值为:", c) # 99864
小提示:需要初学者特别注意的是,= 和 == 的含义完全不同,前者是赋值号,后者是等号,千万不要混淆。
比较运算符
Python比较运算符用于基本的数学运算,包括了等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)和小于等于(<=)。
等于(==):比较对象是否相等。
''' Author: Python当打之年 ''' a = 278 b = 278 c = 3 print(a==b) # True print(a==c) # False print(id(a)) # 140710118037184 print(id(b)) # 140710118037184 print(id(c)) # 140710118037216 lst1 = ["hello world"] lst2 = ["hello world"] print(lst1 is lst2) # False print(lst1 == lst2) # True print(id(lst1)) # 2565803889728 print(id(lst2)) # 2565805256384
小提示:对象之间比较,可以用 ==,也可以用 is ,两者之间的区别如下:
- is 比较的是两个实例对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同。内存地址可以通过id()函数查询
- == 比较的是两个对象的内容是否相等,即内存地址可以不一样,内容一样就可以了。
不等于(!=):比较对象是否不相等。
a = '278' b = '278' c = 3 print(a!=b) # False print(a!=c) # True lst1 = ["hello world"] lst2 = ["hello world"] print(lst1 is not lst2) # True print(lst1 != lst2) # False print(id(lst1)) # 2565803889728 print(id(lst2)) # 2565805256384
小提示:!=/is not 与 ==/ is 类似。
大于(>):比较对象大小,前者是否大于后者。
小于(<):比较对象大小,前者是否小于后者。
大于等于(>=):比较对象大小,前者是否大于等于后者。
小于等于(<=):比较对象大小,前者是否小于等于后者。
列表比较:从第一个元素顺序开始比较,如果相等,则继续,返回第一个不想等元素比较的结果。如果所有元素比较均相等,则长的列表大,一样长则两列表相等。
lst1 = [1,2,3] lst2 = [1,3,5] lst3 = [1,2,3,-1] print(lst1 < lst2) # True print(lst1 < lst3) # True print(lst2 < lst3) # False print(lst1 > lst2) # False print(lst1 > lst3) # False print(lst2 > lst3) # True
逻辑运算符
python 逻辑运算符包括:and, or, not
优先级:() > not > and > or
and :逻辑与运算。
x and y:
布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。
x = 50*2 y = 100*2 z = 100*0 # 计算x, 计算y print(x and y) # 200 # 计算x, 计算z print(x and z) # 0 # 计算z, 不计算x print(z and x) # 0
or :逻辑或运算。
x or y:
布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。
x = 50*2 y = 100*2 z = 100*0 # 计算x, 不计算y print(x or y) # 100 # 计算x, 不计算z print(x or z) # 100 # 计算z, 计算x print(z or x) # 100
not :逻辑非运算。
not x:
布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。
x = 50*2 y = 100*2 z = 100*0 print(not x) # False print(not y) # False print(not z) # True
END
以上就是本期为大家整理的全部内容了,赶快练习起来吧,喜欢的朋友可以点赞、点在看也可以分享到朋友圈让更多人知道哦