一.基本运算符
1.1算数运算符
#取整除>>> a = 8>>> b = 3>>> a // b2>>>#取余>>> a = 8>>> b = 3>>> a % b2>>>#取次幂>>> a = 8>>> b = 3>>> a ** b512>>>
1.2比较运算符
比较运算用来对两个值进行比较,返回的是布尔值True或False
#比较两个对象是否相等>>> a = 8>>> b = 3>>> a == bFalse>>>#比较两个对象是否不相等>>> a = 8>>> b = 3>>> a != bTrue>>>
1.3赋值运算符
赋值运算符存在的意义都是为了让我们的代码看起来更加精简
1 增量赋值
>>> a = 8>>> a += 1>>> a9>>> a = 8>>> a = a+1>>> a9>>>
2 链式赋值
>>> a = 8>>> b = a>>> c = b>>> a,b,c(8, 8, 8)>>> a = b = c =8>>> a, b, c(8, 8, 8)>>>
3 交叉赋值
>>> a = 8>>> b = 3>>> a, b = b, a>>> a, b(3, 8)>>>
4 解压赋值
>>> list = [1, 2, 3, 4,]>>> a, b ,c ,d = list>>> a, b, c, d(1, 2, 3, 4)>>>>>> a, b, c = listTraceback (most recent call last): File "<stdin>", line 1, in <module>ValueError: too many values to unpack (expected 3)>>>
注意,上述解压赋值,等号左边的变量名个数必须与右面包含值的个数相同,否则会报错
但是我们可以用*_接受溢出的元素
>>> list = [1, 2, 3, 4,]>>> a, b, c, *_ = list>>> a, b, c(1, 2, 3)>>>
ps:字符串、字典、元组、集合类型都支持解压赋值
1.4逻辑运算符
逻辑运算符用于连接多个条件,进行关联判断,会返回布尔值True或False
1 可以用and连接多个条件,会按照从左到右的顺序依次判断,一旦某一个条件为False,则无需再往右判断,可以立即判定最终结果就为False,只有在所有条件的结果都为True的情况下,最终结果才为True
>>> a = 8>>> b = 3>>> c = 5>>> a > b and b > cFalse>>> a > b and b < cTrue>>>
2 可以用or连接多个条件,会按照从左到右的顺序依次判断,一旦某一个条件为True,则无需再往右判断,可以立即判定最终结果就为True,只有在所有条件的结果都为False的情况下,最终结果才为False
>>> a = 8>>> b = 3>>> c = 5>>> a < c or b > cFalse>>> a > c or b > cTrue>>>
3 混用and or not
>>> a = 8>>> b = 3>>> c = 5>>> a < c or b < c and a > bTrue>>>