在Python中可以将运算符定义为负责两个操作数之间的特定操作的符号。
运算符是程序运行的核心。Python提供了如下所述的各种运算符。
-
算术运算符
-
比较运算符
-
赋值运算符
-
逻辑运算符
-
位运算符
-
成员运算符
-
身份运算符
-
运算符优先级
算术运算符
算术运算符用于在两个操作数之间执行算术运算。它包括+(加法), - (减法),*(乘法),/(除法),%(取余),//(向下取整)和指数(**)。
请通过下表学习算术运算符的详细内容:
| 运算符 | 描述 |
示例 |
| +(加法) |
它用于两个操作数相加 |
例如:如果a = 20,b = 10 => a +
b = 30 |
| - (减法) |
它用于从第一个操作数中减去第二个操作数。如果第一个操作数小于第二个操作数,则结果为负值 |
例如:如果a = 20,则b = 10 =>
a?b = 10 |
| /(除) |
它在将第一个操作数除以第二个操作数后返回商 |
例如:如果a = 20,则b = 10 => a / b = 2 |
| *(乘法) |
它用于将一个操作数与另一个操作数相乘 |
例如:如果a = 20,则b = 10 => a * b = 200 |
|
%(取余) |
它在将第一个操作数除以第二个操作数后返回余数 |
例如:如果a = 20,则b = 10 => a%b = 0 |
| **(指数) |
它是一个指数运算符,表示为计算第二个操作数量的的第一个操作数相乘 |
例如:10**20 为10的20次方, 输出结果 100000000000000000000 |
| //(向下取整) |
它给出了通过两个操作数产生的商并进行向下取整 |
例如:9//2=4 |
比较运算符
比较运算符用于比较两个操作数的值,并相应地返回布尔值true或false。比较运算符如下表所述:示例中a=1,b=2
| 运算符 | 描述 | 示例 |
| == |
如果两个操作数的值相等,则条件变为真 |
(a == b) 返回 False |
| != |
如果两个操作数的值不相等,则条件变为真 |
(a != b)返回true |
| <= |
如果第一个操作数小于或等于第二个操作数,则条件变为真,这个运算符类似 != | (a <= b) 返回 true |
| > = |
如果第一个操作数大于或等于第二个操作数,则条件变为真 |
(a >= b)返回false |
| <> |
如果两个操作数的值不相等,则条件变为真 |
(a <> b)返回 true |
| > |
如果第一个操作数大于第二个操作数,则条件变为真 |
(a > b)返回flase |
| < |
如果第一个操作数小于第二个操作数,则条件为真 |
(a < b)返回true |
Python赋值运算符
赋值运算符用于将右表达式的值赋给左操作数。赋值运算符如下表所述。
| 运算符 | 描述 | 实例 |
| = |
它将右表达式的值赋给左操作数 |
c=a+b,将a+b的值赋值给c |
| + = |
它通过右操作数的值增加左操作数的值,并将修改后的值赋给左操作数 |
例如,如果a = 10,则b = 20 => a
+ = b将等于a = a + b,因此a = 30 |
| - = |
它将左操作数的值减小右操作数的值,并将修改后的值分配回左操作数 |
例如,如果a = 20,则b =
10 => a- = b将等于a = a-b,因此a = 10 |
| * = |
它将左操作数的值乘以右操作数的值,并将修改后的值赋值回左操作数 |
例如,如果a = 10,则b =
20 => a * = b将等于a = a * b,因此a = 200 |
| %= |
它将左操作数的值除以右操作数的值,并将提醒返回到左操作数 |
例如,如果a = 20,则b =
10 => a%= b将等于a = a%b,因此a = 0 |
| **= |
幂赋值运算符,a ** =
b将等于a = a ** b |
例如,如果a = 4,b =
2,a ** = b将4 ** 2 = 16分配给a |
| //= |
取整除赋值运算符,A // =
b将等于a = a // b |
例如,如果a = 4,b = 3,则a // = b将4 // 3 = 1分配给a |
按位运算符
按位运算符对两个操作数的值执行逐位操作。
例如,
if a = 7; b = 6; then, binary (a) = 0111 binary (b) = 0011 hence, a & b = 0011 a | b = 0111 a ^ b = 0100 ~ a = 1000
| 运算符 | 描述 | 实例 |
| &(二进制和) |
如果两个操作数中相同位置的两个位都是1,则将1复制到结果中。否则,复制0。 |
(a & b) 输出结果 12 ,二进制解释: 0000 1100 |
| | (二进制或) |
如果两个位都为零,则结果位为0,否则结果位为1。 |
(a | b) 输出结果 61 ,二进制解释: 0011 1101 |
| ^(二进制xor) |
如果两个位都不同,则结果位将为1,否则结果位将为0。 |
(a ^ b) 输出结果 49 ,二进制解释: 0011 0001 |
| 〜(否定) |
它计算操作数的每个位的否定,即,如果该位为0,则结果位为1,反之亦然。 |
(~a ) 输出结果 -61 ,二进制解释: 1100
0011,在一个有符号二进制数的补码形式。 |
| <<(左移) |
左操作数值向左移动右操作数中的位数。 |
a << 2 输出结果 240 ,二进制解释: 1111 0000 |
| >>(右移) | 左操作数向右移动右操作数中的位数。 |
a >> 2 输出结果 15 ,二进制解释: 0000 1111 |
逻辑运算符
逻辑运算符主要用于表达式求值以做出决策。Python支持以下逻辑运算符,以下假设变量 a 为 10, b为 20:
| 运算符 | 描述 | 实例 |
| and |
如果表达式都为真,则条件为真。如果a和b是两个表达式,则a→true,b→true => a和b→true |
(a and b) 返回 20 |
| not |
如果其中一个表达式为真,则条件为真。如果a和b是两个表达式,则a→true,b→false => a或b→true |
(a or b) 返回 10 |
| or |
如果表达式a为真,则不是(a)将为假,反之亦然 |
not(a and b) 返回 False |
成员运算符
Python成员资格运算符用于检查数据结构中的值的成员资格。如果该值存在于数据结构中,则结果值为true,否则返回false。
| 运算符 | 描述 | 实例 |
| in |
如果在第二个操作数(列表,元组或字典)中找到第一个操作数,则将其评估为true。 |
x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
| Not in |
如果在第二个操作数(列表,元组或字典)中找不到第一个操作数,则将其评估为true。 |
x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
身份运算符
| 运算符 | 描述 | 实例 |
| is |
如果两侧存在的参数指向同一对象,则返回为真 |
x is y, 类似 id(x) == id(y) ,
如果引用的是同一个对象则返回 True,否则返回 False |
| not is |
如果两侧存在的参数不指向同一对象,则返回为真。 |
x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回
False。 |
运算符优先级
运算符的优先级很重要,因为它使我们能够知道应该首先执行哪个运算符。python中运算符的优先级表如下。
| 运算符 | 描述 |
| ** |
指数运算符优先于表达式中使用的所有其他运算符。 |
| 〜+ - |
否定,一元加减。 |
| * /%// |
乘法,除法,模块,提醒和楼层划分。 |
| + - |
二进制加减 |
| >> << |
左移和右移 |
| & |
二进制和。 |
| ^ | |
二元xor和or |
| <= <>> = |
比较运算符(小于,小于等于,大于,大于等于)。 |
| <> ==!= |
比较运算符 |
| =%= / = // = - =
+ = |
等于运算符 |
| * = ** = |
赋值运算符 |
| is is not | 身份运算符 |
| in not in | 成员运算符 |
| not and or | 逻辑运算符 |
第1章 Python简介
