Python - 基本运算符

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

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

运算符类型

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

  • 算术运算符

  • 比较(关系)运算符

  • 赋值运算符

  • 逻辑运算符

  • 按位运营商

  • 会员运营商

  • 身份运营商

让我们一个接一个地查看所有运算符.

Python算术运算符

假设变量a成立10和变量b保持20:

Ope宇宙rator描述示例
+ 加法在两边添加值operator.a + b = 30
- 减法从左手操作数中减去右手操作数.a  -  b = -10
*乘法将运算符两侧的值相乘a * b = 200
/除法用左手操作数除左手操作数b/a = 2
%模数用左手操作数除左手操作数并返回余数b%a = 0
**指数Pe rforms exponential(power)计算运算符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)不成立.
< =如果左操作数的值小于或等于右操作数的值,则condition变为true.(a< = b)为真.

Python赋值运算符

假设var iable a hold 10和变量b持有20,然后 :

运算符描述
=从中分配值右侧操作数到左侧操作数c = a + b将a + b的值赋给c
+ =添加AND它将右操作数添加到左操作数并将结果赋给左操作数c + = a相当于c = c + a
-  =减去AND它从左操作数中减去右操作数并分配结果为左操作数c  -  = a相当于c = c  -  a
* =乘以AND它将右操作数与左操作数相乘,并将结果赋值给左操作数c * = a相当于c = c * a
/=除以AND它将左操作数除以右操作数,并将结果赋值给左操作数c/= a相当于c = c/ac/= a相当于c = c/a
%=模数AND使用两个操作数获取模数并将结果赋值给左操作数c%= a相当于c = c%a
** =指数AND对运算符执行指数(幂)计算并为其赋值左操作数c ** = a相当于c = c ** a
//= Floor Division它对运算符执行floor floor并为左操作数赋值c//= a相当于c = c//a

Python按位运算符

按位运算符处理位并执行逐位运算.假设a = 60;和b = 13;现在采用二进制格式,它们将如下所示;

a = 0011 1100

b = 0000 1101

-----------------

a& b = 0000 1100

a | b = 0011 1101

a ^ b = 0011 0001

~a  = 1100 0011

Python语言支持以下Bitwise运算符

运算符描述示例
&二进制AND运算符如果两个操作数都存在,则将一个位复制到结果(a& ; b)(指0000 1100)
|二进制OR如果它存在于任一操作数中,它会复制一点.(a | b) = 61(表示0011 1101)
^二进制XOR如果在一个操作数中设置但不是两者都复制该位.(a ^ b)= 49(表示0011 0001)
〜二元补充它是一元的并具有'翻转'位的效果.(~a)= -61(表示1100由于带符号的二进制数,因此在2的补码形式中为0011.
<<二进制左移左操作数值向左移动右操作数指定的位数.a<<<<< 2 = 240(表示1111 0000)
>> Binary Right Shift左操作数值向右移动右操作数指定的位数.a>> 2 = 15(表示0000 1111)

Python逻辑运算符

遵循Python语言支持的逻辑运算符.假设变量a保持10而变量b保持20:

运算符描述示例
和逻辑AND如果两者都操作数为true,则条件成立.(a和b)为真.
或逻辑OR如果两个操作数中的任何一个非零,则条件变为真.(a或b)为真.
not Logical NOT用于反转其操作数的逻辑状态.不(a和b)为假.


用于反转其操作数的逻辑状态.

Python成员运算符

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

运算符描述示例

如果发现,则评估为true指定序列中的变量,否则为false.x in y,如果x是序列y的成员,则结果为1.
不在如果确实如此,则评估为true找不到指定序列中的变量,否则返回false.x不在y中,如果x不是序列y的成员,则不在结果为1.

Python Identity Ope rators

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

运算符描述示例

如果变量上的话,求值为true操作符的任一侧指向同一个对象,否则返回false.x是y,这里导致1如果id(x)等于id(y).
不是如果运算符两侧的变量指向同一个对象,则求值为false,否则求值为true.x是不是y,这里不是如果id(x)不等于id(y),则结果为1./td>

Python运算符优先级

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

Sr.No.运算符&说明
1

**

指数化(加权)

2

〜+  -  

补充,一元加和减去(最后两个的方法名是+ @和 -  @)

3

*/%//

乘法,除法,模数和分层

4

+ -  

加法和减法

5

>> <<

左右按位移位

6

&

按位'AND'

7

^ |

按位排除"OR"和常规"OR"

8

< =< &GT; > =

比较运算符

9

<> ==!=

平等运营商

10

=%=/=//=  -  = + = * = ** =

作业运算符

11

不是

身份运营商

12

不在

会员运营商

13

不是和

逻辑运算符