Python 中的运算符主要分为算术运算符、比较(关系)运算符、赋值运算符、逻辑运算符、位运算符、成员运算符和身份运算符共 7 大类,运算符之间也是由优先级的,下面我们就来进行具体介绍。

一、算术运算符

运算符描述
+两个数相加,或是字符串连接
-两个数相减
*两个数相乘,或是返回一个重复若干次的字符串
/两个数相除,结果为浮点数(小数)
//两个数相除,结果为向下取整的整数
%取模,返回两个数相除的余数
**幂运算,返回乘方结果

以上算术运算符的示例和运行结果如下所示:
在这里插入图片描述

二、比较(关系)运算符

运算符描述
==比较两个对象是否相等
!=比较两个对象是否不相等
>大小比较,例如 x>y 将比较 x 和 y 的大小,如 x 比 y 大,返回 True,否则返回 False
<大小比较,例如 x<y 将比较 x 和 y 的大小,如 x 比 y 小,返回T rue,否则返回 False
>=比较两个对象是否相等大小比较,例如 x>=y 将比较 x 和 y 的大小,如 x 大于等于 y,返回 True,否则返回 False
<=大小比较,例如 x<=y 将比较 x 和 y 的大小,如 x 小于等于 y,返回 True,否则返回 False

以上比较运算符的示例和运行结果如下所示:
在这里插入图片描述

三、赋值运算符

运算符描述
=常规赋值运算符,将运算结果赋值给变量
+=加法赋值运算符,例如 a+=b 等效于 a=a+b
-=减法赋值运算符,例如 a-=b 等效于 a=a-b
*=乘法赋值运算符,例如 a*=b 等效于 a=a*b
/=除法赋值运算符,例如 a/=b 等效于 a=a/b
%=取模赋值运算符,例如 a%=b 等效于 a=a%b
**=幂运算赋值运算符,例如 a**=b等效于 a=a**b
//=取整除赋值运算符,例如 a//=b 等效于 a=a//b

上述赋值运算符的示例如下所示:
在这里插入图片描述

四、逻辑运算符

运算符描述
and布尔“与”运算符,返回两个变量“与”运算的结果
or布尔“或”运算符,返回两个变量“或”运算的结果
not布尔“非”运算符,返回对变量“非”运算的结果

上述逻辑运算符的示例如下所示:
在这里插入图片描述

五、位运算符

运算符描述
&按位“与”运算符:参与运算的两个值,如果两个相应位都为 1,则结果为 1,否则为 0
∣ \mid 按位“或”运算符:只要对应的两个二进制位有一个为 1 时,结果就为 1
^按位“异或”运算符:当两对应的二进制位相异时,结果为 1
~按位“取反”运算符:对数据的每个二进制位取反,即把 1 变为 0,把 0 变为 1
<<“左移动”运算符:运算数的各二进制位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃, 低位补 0
>>“右移动”运算符:运算数的各二进制位全部右移若干位,由“>>”右边的数指定移动的位数

上述位运算符的示例如下所示:
在这里插入图片描述

六、成员运算符

运算符描述
in当在指定的序列中找到值时返回 True,否则返回 False
not in当在指定的序列中没有找到值时返回 True,否则返回 False

上述成员运算符的示例如下所示:
在这里插入图片描述

七、身份运算符

运算符描述
is判断两个标识符是否引用自同一个对象,若引用的是同一个对象则返回 True,否则返回 False
is not判断两个标识符是不是引用自不同对象,若引用的不是同一个对象则返回 True,否则返回 False

上述身份运算符的示例如下所示:
在这里插入图片描述

八、运算符优先级

上述 34 个 Python 运算符的优先级从高到低排序如表 8 所示。

运算符描述
**
~按位“取反”
*、/、%、//乘、除、取模、取整除
+、-加、减
>>、<<右移、左移
&按位“与”
^、 ∣ \mid 按位“异或”、按位“或”
<=、<、>、>=比较运算符
==、!=等于、不等于
=、%=、/=、//=、-=、+=、*=、**=赋值运算符
is、is not身份运算符
in、not in成员运算符
and or not逻辑运算符
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐