Python – 基本运算符

运算符是可以操纵操作数的值的构造。

考虑表达式 4 + 5 = 9。这里,4 和 5 称为操作数,+ 称为运算符。

运算符类型

Python 语言支持以下类型的运算符。

  • 算术运算符
  • 比较(关系)运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算符
  • Membership Operators
  • Identity Operators

让我们一一了解所有运算符。

Python算术运算符

假设变量 a 为 10,变量 b 为 20,则 –

操作描述例子
+ 加法在运算符的任一侧添加值。a + b = 30
– 减法从左手操作数中减去右手操作数。a – b = -10
* 乘法将运算符两边的值相乘a * b = 200
/ 分配将左手操作数除以右手操作数b / a = 2
% 模量将左手操作数除以右手操作数并返回余数b % a = 0
** 指数对算子执行指数(幂)计算a**b =10 的 20 次方
//Floor Division – 操作数的除法,其结果是除去小数点后的数字的商。但是,如果其中一个操作数为负数,则结果为下限,即从零四舍五入(向负无穷大) –9//2 = 4 和 9.0//2.0 = 4.0,-11//3 = -4,-11.0//3 = -4.0

Python 比较运算符

这些运算符比较它们两侧的值并确定它们之间的关系。它们也称为关系运算符。

假设变量 a 为 10,变量 b 为 20,则 –

操作描述例子
==如果两个操作数的值相等,则条件成立。(a == b) 不正确。
!=如果两个操作数的值不相等,则条件为真。(a != b) 是真的。
<>如果两个操作数的值不相等,则条件为真。(a <> b) 是真的。这类似于 != 运算符。
>如果左操作数的值大于右操作数的值,则条件为真。(a > b) 不正确。
<如果左操作数的值小于右操作数的值,则条件为真。(a < b) 为真。
>=如果左操作数的值大于或等于右操作数的值,则条件为真。(a >= b) 不正确。
<=如果左操作数的值小于或等于右操作数的值,则条件为真。(a <= b) 是真的。

Python 赋值运算符

假设变量 a 为 10,变量 b 为 20,则 –

操作描述例子
=将右侧操作数的值分配给左侧操作数c = a + b 将 a + b 的值赋给 c
+= 添加 AND它将右操作数添加到左操作数并将结果分配给左操作数c += a 等价于 c = c + a
-= 减和它从左操作数中减去右操作数并将结果分配给左操作数c -= a 等价于 c = c – a
*= 乘与它将右操作数与左操作数相乘并将结果分配给左操作数c *= a 等价于 c = c * a
/= 除以 AND它将左操作数与右操作数相除并将结果分配给左操作数c /= a 等价于 c = c / a
%= 模数与它使用两个操作数取模并将结果分配给左操作数c %= a 等价于 c = c % a
**= 指数与对运算符执行指数(幂)计算并将值分配给左操作数c **= a 等价于 c = c ** a
//= 楼层划分它对运算符执行地板除法并将值分配给左操作数c //= a 等价于 c = c // a

Python 位运算符

位运算符对位起作用并执行逐位运算。假设 a = 60;和 b = 13; 现在在二进制格式中,它们的值将分别为 0011 1100 和 0000 1101。下表列出了 Python 语言支持的按位运算符,每个运算符都有一个示例,我们使用上述两个变量(a 和 b)作为操作数 –

一个 = 0011 1100

b = 0000 1101

—————–

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a = 1100 0011

Python 语言支持以下按位运算符

操作描述例子
& 二进制与如果两个操作数中都存在,则运算符将位复制到结果中(a & b) (表示 0000 1100)
| 二进制或如果它存在于任一操作数中,它会复制一点。(a | b) = 61(表示 0011 1101)
^ 二进制异或如果它在一个操作数中设置,它会复制该位,但不是在两个操作数中都设置。(a ^ b) = 49(表示 0011 0001)
~ 二进制补码它是一元的,具有“翻转”位的效果。(~a ) = -61 (由于有符号二进制数,表示 1100 0011 为 2 的补码形式。
<< 二进制左移左操作数的值向左移动右操作数指定的位数。a << 2 = 240(表示 1111 0000)
>> 二进制右移左操作数的值向右移动右操作数指定的位数。a >> 2 = 15(表示 0000 1111)

Python 逻辑运算符

Python 语言支持以下逻辑运算符。假设变量 a 保持 10 并且变量 b 保持 20 然后

操作描述例子
和逻辑与如果两个操作数都为真,则条件为真。(a 和 b) 是正确的。
或逻辑或如果两个操作数中的任何一个不为零,则条件为真。(a 或 b) 为真。
非逻辑非用于反转其操作数的逻辑状态。Not(a and b) 是假的。

Python 成员运算符

Python 的成员资格运算符测试序列中的成员资格,例如字符串、列表或元组。有两个会员运营商,如下所述 –

操作描述例子
in如果找到指定序列中的变量,则评估为 true,否则评估为 false。x in y,如果 x 是序列 y 的成员,则结果为 1。
not in如果在指定序列中未找到变量,则评估为 true,否则评估为 false。x 不在 y 中,如果 x 不是序列 y 的成员,则这里 not in 结果为 1。

Python 身份运算符

身份运算符比较两个对象的内存位置。下面解释了两个身份运算符 –

操作描述例子
is如果运算符两侧的变量指向同一对象,则计算结果为 true,否则计算结果为 false。x 是 y,如果 id(x) 等于 id(y) ,则结果为 1。
is not如果运算符两侧的变量指向同一对象,则计算结果为 false,否则计算结果为 true。x 不是 y,如果 id(x) 不等于 id(y) ,这里的结果不是1。

Python 运算符优先级

下表列出了从最高优先级到最低优先级的所有运算符。

Sr.No.Operator & Description
1**
求幂(乘幂)
2~ + –
补码,一元加减(最后两个的方法名是 +@ 和 -@)
3* / % //
乘法、除法、模数和底除法
4+ –
加减
5>> <<
左右位移
6&
按位“与”
7^ |
按位异或“或”和常规“或”
8<= < > >=
比较运算符
9<> == !=
等式运算符
10= %= /= //= -= += *= **=
赋值运算符
11is is not
身份运算符
12in not in
Membership operators
13not or and
逻辑运算符