Python 运算符
Python 运算符
运算符用于对变量和值执行运算。
在下面的例子中,我们使用 +
运算符将两个值相加:
Python 将运算符分为以下几组:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 身份运算符
- 会员运营商
- 按位运算符
Python 算术运算符
算术运算符与数值一起使用来执行常见的数学运算:
操作员 | 姓名 | 例子 | 尝试一下 |
---|---|---|---|
+ | 添加 | x + y | 尝试一下 ” |
- | 减法 | x - y | 尝试一下 ” |
* | 乘法 | x * y | 尝试一下 ” |
/ | 分配 | x / y | 尝试一下 ” |
% | 模量 | x % y | 尝试一下 ” |
** | 指数运算 | 坐标**y | 尝试一下 ” |
// | 楼层划分 | x // y | 尝试一下 ” |
Python 赋值运算符
赋值运算符用于给变量赋值:
操作员 | 例子 | 与...一样 | 尝试一下 |
---|---|---|---|
= | x = 5 | x = 5 | 尝试一下 ” |
+= | x += 3 | x=x+3 | 尝试一下 ” |
-= | x -= 3 | x = x - 3 | 尝试一下 ” |
*= | x *= 3 | x = x * 3 | 尝试一下 ” |
/= | x /= 3 | x = x / 3 | 尝试一下 ” |
%= | x %= 3 | x = x % 3 | 尝试一下 ” |
//= | x //= 3 | x = x // 3 | 尝试一下 ” |
**= | x**= 3 | x = x ** 3 | 尝试一下 ” |
&= | x &= 3 | x = x & 3 | 尝试一下 ” |
|= | x |= 3 | x = x | 3 | 尝试一下 ” |
^= | x^=3 | x = x ^ 3 | 尝试一下 ” |
>>= | x >>= 3 | x = x >> 3 | 尝试一下 ” |
<<= | x <<= 3 | x = x << 3 | 尝试一下 ” |
Python 比较运算符
比较运算符用于比较两个值:
操作员 | 姓名 | 例子 | 尝试一下 |
---|---|---|---|
== | 平等的 | x == y | 尝试一下 ” |
!= | 不等于 | x != y | 尝试一下 ” |
> | 比...更棒 | x > y | 尝试一下 ” |
< | 少于 | x < y | 尝试一下 ” |
>= | 大于或等于 | x >= y | 尝试一下 ” |
<= | 小于或等于 | x <= y | 尝试一下 ” |
Python 逻辑运算符
逻辑运算符用于组合条件语句:
操作员 | 描述 | 例子 | 尝试一下 |
---|---|---|---|
和 | 如果两个语句都为真,则返回 True | x < 5 且 x < 10 | 尝试一下 ” |
或者 | 如果其中一个语句为真,则返回 True | x < 5 或 x < 4 | 尝试一下 ” |
不是 | 反转结果,如果结果为真,则返回 False | 非(x < 5 且 x < 10) | 尝试一下 ” |
Python 身份运算符
身份运算符用于比较对象,不是比较它们是否相等,而是比较它们是否实际上是同一个对象,具有相同的内存位置:
操作员 | 描述 | 例子 | 尝试一下 |
---|---|---|---|
是 | 如果两个变量是同一个对象,则返回 True | x 是 y | 尝试一下 ” |
不是 | 如果两个变量不是同一个对象,则返回 True | x 不是 y | 尝试一下 ” |
Python 成员运算符
成员运算符用于测试对象中是否存在序列:
操作员 | 描述 | 例子 | 尝试一下 |
---|---|---|---|
在 | 如果对象中存在具有指定值的序列,则返回 True | x 于 y | 尝试一下 ” |
不在 | 如果对象中不存在具有指定值的序列,则返回 True | x 不在 y 中 | 尝试一下 ” |
Python 按位运算符
按位运算符用于比较(二进制)数字:
操作员 | 姓名 | 描述 | 例子 | 尝试一下 |
---|---|---|---|---|
& | 和 | 如果两位均为 1,则将每位设置为 1 | x 和 y | 尝试一下 ” |
| | 或者 | 如果两位中有一位为 1,则将每位设置为 1 | x | y | 尝试一下 ” |
^ | 异或 | 如果两位中只有一位为 1,则将每位设置为 1 | y ^ x | 尝试一下 ” |
~ | 不是 | 反转所有位 | ~x | 尝试一下 ” |
<< | 零填充左移 | 通过从右侧推入零来向左移动,并让最左边的位掉落 | x << 2 | 尝试一下 ” |
>> | 有符号右移 | 通过从左侧推入最左边的位副本来向右移动,并让最右边的位掉落 | x >> 2 | 尝试一下 ” |
运算符优先级
运算符优先级描述了运算的执行顺序。
优先顺序如下表所述,最高优先级从上至下:
操作员 | 描述 | 尝试一下 |
---|---|---|
() |
括号 | 尝试一下 ” |
** |
指数运算 | 尝试一下 ” |
+x
-x
~x
|
一元加法、一元减法和按位非 | 尝试一下 ” |
*
/
//
%
|
乘法、除法、向下取整除法和模数 | 尝试一下 ” |
+
-
|
加减 | 尝试一下 ” |
<< >>
|
按位左移和右移 | 尝试一下 ” |
& |
按位与 | 尝试一下 ” |
^ |
按位异或 | 尝试一下 ” |
| |
按位或 | 尝试一下 ” |
==
!=
>
>=
<
<=
is
is not
in
not in
|
比较、身份和成员运算符 | 尝试一下 ” |
not |
逻辑非 | 尝试一下 ” |
and |
和 | 尝试一下 ” |
or |
或者 | 尝试一下 ” |
如果两个运算符具有相同的优先级,则从左到右计算表达式。