1、算数运算符
在学习算数运算符之前,我们先了解一个Python中最常见的赋值运算符,它就是"="。
在Python中"="不代表相等而代表赋值(将右侧的数据赋值(也可以理解成复制)给左侧)
a = 3
b = a
print(a,b)
结果如下:
上面的语句为:将3赋值给a,将a的值赋值给b。打印出a,b,的值。结果为3 3。
Python中算数运算符有7种,加减乘(*)除(/),求余(%),整除(//),乘方(**)
1.加(+)减(-)乘(*)除(/)最需要注意的是除法(/)
a = 2 + 3
b = 3 - 2
c = 3 * 2
d = 4 / 2
print(a,b,c,d)
结果如下:
我们可以看到两个整数相除的结果变为了float型
2.求余(%)即被除数除以除数所得的余数,例 5对2求余得1:
a = 5 % 2
print(a)
结果如下:
3.整除即被除数除以除数所得的商,例 5对2整除得2:
a = 5 // 2
print(a)
结果如下:
4.次方就是平常的数的几次方,例 5的2次方的25:
a = 5 ** 2
print(a)
结果如下:
2、赋值运算符
Python中赋值运算符有(=)(+=)(-=)(*=)(/=)(%=)(//=)(**=)
在读代码时读作加等、减等、乘等等等,但是它们都是将数据赋值给左侧变量。
以a+=1 为例,它等价于a = a+1,当然变量要先前声明,这个式子就是把变量a与1的和赋值给变量a,覆盖掉先前变量a的值。其他等价如上图。
3、比较运算符
Python中比较运算符主要用于代码中的条件判断,返回的结果为布尔值(真或假),在代码中表现为True或False。
以比较运算符"=="为例,"=="比较等号两边的数据是否完全相等,相等返回True,不同返回False。不同类型的数据无法进行比较。例:
a = 5 == 5
print(a)
结果为True,其中赋值运算符(=)的优先级低于比较运算符"==",所以先比较5 == 5,把结果True赋值给变量a。感兴趣的小伙伴可以去了解一下Python中运算符的优先级。
">"是左侧大于右侧返回True,否则返回False,"<"与">"相反。以此类推">="、"<=",满足为True,否则为False。
需要注意,字符串也可以比较,从第一个字符开始比较,相同比较下一个,感兴趣的小伙伴可以尝试比一下。
4、逻辑运算符
以and为例,两侧都为真才是真,左侧为真要看右侧是否为真,返回右侧;左侧为假就不用管右侧是否为真,返回左侧。
# and 左侧为真返回右侧
# 返回 20 None
print(10 and 20)
print(True and None)
# 返回hello
print(True and "hello")
# and 左侧为假返回左侧 0
print(0 and "hello")
结果如下:
5、位运算符
位运算符了解即可,1字节(btye)==8位(bit)。位运算符作用于二进制数,按位与(&)按位比较两个都为1结果为1,否则为0;按位或(|)按位比较两个都为0结果为0,否则为1;按位异或(^)相同为0,不同为1。
a = 96
b = 118
print(a & b, a | b, a ^ b)
# 将a,b转为二进制
a = bin(a)
b = bin(b)
# a = 0b1100000
# b = 0b1110110
print(a, b)
# a & b = 0b1100000
# a | b = 0b1110110
# a ^ b = 0b0010110
结果如下,第一行位计算结果,第二行位a, b 转换二进制的结果:
Python中0b开头代表是二进制数,两数对其相同位数比较,小数点前在数据左侧补零。
6、成员运算符
成员运算符有in和not in ,即在 和 不在,通常也是作为条件。
例:
a = "a" in "abc"
print(a)
字符a 在字符串 abc中返回True,结果为True
不同数据类型不可以用成员运算符。