一、算术运算符
print(11/5) #除法
print(11//5) #整除
print(2**3) #幂运算 表示的是2的3次方
余数和整除里的正负问题
print(9//4) #2
print(-9//-4) #2
print(9//-4) #-3
print(-9//4) #-3 一正一负的整除公式向下取整
print(9%-4) #-3 公式: 余数=被除数-除数*商 9-(-4)*(-3)=9-12=-3
print(-9%4) #3 -9-4*(-3)=-9+12=3
二、赋值运算符
1、链式赋值
a=b=c=20 #三者的id是一样的,指向同一个内存空间
2、参数赋值 += -= *= /= …
3、支持系列解包赋值
a,b,c=10,20,30
print(a,b,c)
#a,b=20,30,40 报错,因为左右两边变量的个数和值的个数不对应 优点:交换两个变量的值的时候,不需要中间变量
a,b=10,20
print("交换之前:",a,b)
a,b=b,a
print("交换之后:",a,b)
三、比较运算符 对变量或者表达式的结果进行大小、真假比较 比较运算符的结果为bool类型 false或者true
'''
== 比较的是值
is 比较对象的标识
'''
#例子1
a=10
b=10
print(a is b) #True 两者的id标识一样
#例子2
list1=[11,22,33,44]
list2=[11,22,33,44]
print(list1==list2) #True
print(list1 is list2) #False
print(list1 is not list2) #True
四、布尔运算符
and 有假且为假 or 有真或为真 not 取反 in和not in
s='helloworld'
print('w' in s) #True
print('k' in s) #False
print('w' not in s) #False
print('k' not in s) #True
五、位运算符
1、位与&:结果都为1才为1
2、位或|:结果都为0才为0
3、左移运算符<<:高位溢出舍弃,低位补0(相当于乘以2)
4、右移运算符>>:低位溢出舍弃,高位补0(相当于除以2)
六、运算符的优先级
1、算术运算符 先算乘除,后算加减,有幂运算先算幂
** -> *,/,//,% -> +,-
2、位运算符 左移、右移->与->或 <<,>> -> & -> |
3、比较运算符 结果为True或者False >,<,>=,<=,==,!=
4、布尔运算 and -> or
5、赋值运算符 =