算数运算符
//假设 a = 10,b = 21
+ a + b = 31
- a - b = -11
* a * b = 210
/ a / b = 2.1
% a % b = 1
** 幂-返回x的y次方 a ** b 是10 的 21 次方
// 取整数-向下取接近商的整数 9 // 2 = 4 -9 // 2 = -5
比较运算符
== 等于对象是否相等
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
赋值运算符
a = 10 b = 20
= 简单的赋值运算符 c = a + b 将a + b的运算结果赋值给c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取余赋值运算符 c %= a 等效于 c % a
**= 幂赋值运算符 c = a 等效于 c = c a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
逻辑运算符
and x and y 布尔'与' 如果x为false x and y 返回 x 的值,否则返回y的计算值
or x or y 布尔'或' 如果x为true 返回 x 的值,否则返回 y 的计算值
not not y 布尔'非' 如果x为true 返回false,x 为false,返回true
位运算符
位运算符是把数字看做二进制来进行计算的 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
& 按位与运算符:两个值,如果都相应为 1 ,则该位的结果为 1 ,否则为 0
| 按位或运算符:对应的二个二进位有一个为 1 时,结果位数就为 1
^ 按位异或运算符 对应的二进位相异时,结果为 1
~ 按位取反运算符 对二进制位取反 即把 1 变为 0,把 0 变为 1,-x 类似 -x-1
<< 左移动运算符 向左移动若干,由'<<'右边的数指定移动的位数,高位丢弃,低位补 0
>> 右移动运算符 把'>>'左边的运算符全部右移若干位,右边的数指定位数
成员运算符
in 指定的序列中找到值返回true,否则返回false
not in 指定的序列中没有找到值返回true,否则返回true
身份运算符
is 判断标识符是不是引用一个对象
is not 判断标识符是不是引用自不同对象
id()函数获取对象内存地址
运算符的优先级 最高到最低的所有运算符 and 比 or 拥有更高优先级
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % // 乘,除,求余数和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 'AND'
^ | 位运算符
<= < > > 比较运算符
== != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符
and 比 or 拥有更高优先级