Python中运算符的使用
算数运算符
加(+)、减(-)、乘(*)、除(/)
与其他语言的用法无异:
1 print(1+1) #2 2 print(2-1) #1 3 print(2*3) #6 4 print(11/2)#5.5 这里的“/”运算符可以直接求出正常正确的数值,而不是像java一样转化成int类型
其中“+”运算符也值得注意:
print(1.1+2.2) #其结果并不是3.3,而是3.3000000000000003,这是因为在Python中数据以二进制存储,计算时会有一些数据出现这样的差别失误
可以用以下方式解决:
from decimal import Decimal print(Decimal('1.1')+Decimal('2.2')) #结果是3.3
取整运算符(//)、取余运算符(%)、幂运算符(**)
其中取余和取整都有分符号的情况
1 print(11//2) #结果为5 2 print(2**3) #结果为8,即2^3(2的三次方) 3 print(11%2) #结果1
比较运算符
大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、值等于(==)、值不等于(!=)
1 print(1>2) #False 2 print(2>1) #True 3 print(2>=1) #True 4 print(2>=2) #True 5 print(1>=2) #False 6 print(1==1) #True 7 print(1!=2) #True
身份运算符
id比较(is & is not)
1 a = 10; 2 b = 10; 3 print(a is b) #True 说明a和b的id是相同的 4 print(a is not b) 6 a1 = 1 7 a2 = 0 8 print(a1 is a2) #False 说明是a1和a2的id不同 9 print(a1 is not a2)
布尔运算符
与(and)、或(or)、非(not)
1 a = True 2 b = False 3 print(a and b) #False 4 print(a or b) #True 5 print(not a) #False
成员运算符
存在(in)、不存在(not in)
1 s = "call your name" 2 print('ca' in s) #True 3 print('oo' in s) #False
位运算符
按位与(&)、按位或(|)、左移位(<<)、右移位(>>)
转换为二进制进行运算
1 a = 4 2 b = 8 3 print(a & 8) #(0b0100)&(0b1000)->0b0000=0 4 print(4 | 8) #(0b0100) | (0b1000)->1100=12 5 print(4 << 1) #左移1位0b0100->0b1000=8 6 print(8 >> 2) #右移2位0b1000->0b0010=2
运算符优先级
()>算术运算符>位运算符>比较运算符>布尔运算符>赋值运算符
【部分截图来自于马士兵教育】