Python - 基本运算符
上一页下一页
运算符是可以操作操作数的值的构造。
考虑表达式 4 + 5 =9。这里,4 和 5 称为操作数,+ 称为运算符。
运算符类型
Python语言支持以下几种运算符。
- 算术运算符
- 比较(关系)运算符
- 赋值运算符
- 逻辑运算符
- 位运算符
- 会员运营商
- 恒等运算符
让我们一一来看看所有的算子吧。
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 |
>= | 如果左操作数的值大于或等于右操作数的值,则条件为真。 | (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 |
/=除法 | 将左操作数与右操作数相除并将结果分配给左操作数 | 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)作为操作数 -
a =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 的成员资格运算符测试序列中的成员资格,例如字符串、列表或元组。有两个成员运算符,如下所述 -
[显示示例]
运算符 | 描述 | 示例 |
---|---|---|
在 | 如果找到指定序列中的变量,则为真,否则为假。 | x in y,如果 x 是序列 y 的成员,则结果为 1。 |
不在 | 如果在指定序列中没有找到变量,则返回 true,否则返回 false。 | x 不在 y 中,如果 x 不是序列 y 的成员,则此处 not in 结果为 1。 |
Python 身份运算符
恒等运算符比较两个对象的内存位置。下面解释了两个身份运算符 -
[显示示例]
运算符 | 描述 | 示例 |
---|---|---|
是 | 如果运算符两侧的变量指向同一个对象,则计算结果为真,否则计算结果为假。 | x 是 y,这里 是 如果 id(x) 等于 id(y),则结果为 1。 |
不是 | 如果运算符两侧的变量指向同一个对象,则为 false,否则为 true。 | x 不是 y,这里 不是 如果 id(x) 不等于 id(y),则结果为 1。 |
Python 运算符优先级
下表按优先级从高到低列出了所有运算符。
[显示示例]
Sr.No. | 运算符和描述 |
---|---|
1 | ** 求幂(乘幂) |
2 | ~ + - 补码,一元加减(最后两个的方法名是+@和-@) |
3 | * / % // 乘、除、模和底除法 |
4 | + - 加减法 |
5 | >> << 左右移位 |
6 | & 按位“与” |
7 | ^ | 按位异或'OR'和正则'OR' |
8 | <=<>>= 比较运算符 |
9 | <> ==!= 等式运算符 |
10 | =%=/=//=-=+=*=**= 赋值运算符 |
11 | 不是 身份运算符 |
12 | 不在 会员运营商 |
13 | 非或与 逻辑运算符 |
Python