Python自学入门基础教程-运算符
Python算术运算符
-
普通算术运算符
1+ - * / :加减乘除
- 特殊算术运算符
- 取模(余) :%,返回除法的余数
- 幂:**, 返回x的y次幂
-
取整://, 返回商的整数部分(向下取整)
15%2 #输出结果是1 22%10 #输出结果是0 32**3 #输出结果是8 411//2 #输出结果5 5-7//2 #输出结果4
Python比较运算符
比较结果为布尔值,布尔值(Boolean Value)用 True 和 False 来表示。区分大小写
-
等于: ==,比较两个对象是否相等
-
不等于:!=,比较两个对象是否不相等
-
大于: >,返回x是否大于y
-
小于: <, 返回x是否小于y
-
大于等于: >=,返回x是否大于等于y
- 小于等于: <=,返回x是否小于等于y
11==2 #输出结果False 21!=2 #输出结果是True 31>2 #输出结果False 41<2 #输出结果True 51>=2 #输出结果False 61<=2 #输出结果True
Python赋值运算符
-
=, 直接赋值
- 加法赋值:+=, y += x相当于 y = y+x
- 减法赋值:-=, y -= x相当于 y = y-x
- 乘法赋值:*=, y *= x相当于 y = y * x
- 除法赋值:/=, y /= x相当于 y = y/x
- 取模赋值:%=, y %= x相当于 y = y%x
- 幂赋值:**=, y **= x相当于 y = y ** x
- 取整赋值://=, y //= x相当于 y = y+x
- 海象赋值::=, n:=len(a) 对n进行赋值,可在表达式内部使用
1x=2, y=5 2y += x #输出结果y=7 3y -= x #输出结果y=3 4y *= x #输出结果y=10 5y /= x #输出结果y=2 6y %= x #输出结果y=1 7y **= x #输出结果y=25 8y //= x #输出结果y=2 9print(y:=len([1,2,3,4,5]) #输出5
Python逻辑运算符
- 与:and,如果x为0/False,x and y 返回0/False,否则它返回y的计算值
- 或:or,如果x是非0或非False,它返回x的值,否则它返回y的计算值。
-
非:not, 如果x为True,返回False ;如果x为False,它返回True
1False and 2 #输出结果是False 21 and 2 #输出结果是3 3False or 3 #输出结果是3 41 or 3 #输出结果是1 5not 1 #输出结果是False 6not 0 #输出结果是True
Python成员运算符
- in:如果在指定的序列中找到值返回 True,否则返回 False。
-
not in:如果在指定的序列中没有找到值返回 True,否则返回 False。
1'a' in 'basic' #输出结果True 21 not in [1,2,3,4,5] #输出结果False
Python身份运算符
- is:判断两个标识符是不是引用自一个对象
-
not is:判断两个标识符是不是引用自不同对象
1x=10,y=10 2x is y #输出结果True 3x is not y #输出结果False
注:is 用于判断两个变量引用对象是否为同一个(同一块内存空间), == 用于判断引用变量的值是否相等。
Python位运算符
- 按位与:&,参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0
- 按位或:|,只要对应的二个二进位有一个为1时,结果位就为1。
- 按位异或:^,当两对应的二进位相异时,结果为1
- 按位取反:~,对数据的每个二进制位取反,即把1变为0,把0变为1
- 左移:y<<x,把y的各二进位全部左移x位。移位时高位丢弃,低位补0
-
右移:y>>x,把y的各二进位全部右移x位。
1x = 3 # 3 = 0000 0011 2y = 5 # 5 = 0000 0101 3z = 0 4z = x & y # z = 0000 0001 输出结果z=1 5z = x | y # z = 0000 0111 输出结果z=7 6z = x ^ y # z = 0000 0110 输出结果z=6 7z = ~x # z = 1111 1100 输出结果z=-4 8z = y << x # z = 0010 1000 输出结果40 9z = y >> x # z = 0000 0000 输出结果0
注:左移相当于乘以x个2,即y*2*2*2=40(x=3时),右移同理
Python运算符优先级(由高到低)
1** 幂 (最高优先级) 2~ 按位取反 3* / % // 乘,除,取模,取整 4+ - 加法,减法 5>> << 右移,左移 6& 按位与 7^ | 按位异或、按位或 8<= < > >= 比较运算符 9<> == != 等于运算符 10= %= /= //= -= += *= **= 赋值运算符 11is/is not 身份运算符 12in/not in 成员运算符 13not/and/or 逻辑运算符