运算符

运算符分为一下几种类型:

算数运算符(通常只针对数字类型)

算数运算符 说明 示例
+ 加法 2 + 8 = 12
- 减法 30 - 6 = 24
* 乘法 3 * 6 = 18
/ 除法(浮点型) 15 / 2 = 7.5
// 除法(取整型) 3 // 5 = 0
% 求模(既余数) 7 % 3 = 1
** 2 ** 3 = 8
3 / 5 = 0.6 # py3中是自然除,py2中是取整除。 float(3) / 5 = 0.6 py2中的用法

比较运算符

比较运算符 说明 示例
== 等于 1 == 1 True
!= 不等于 5 != 5 False
> 大于 3 > 2 True
>= 大于等于 6 >= 8 False
< 小于 4 < 7 True
<= 小于等于 9 <= 6 False
1 != '1' True # 除了 == 和 != 最好类型相同

赋值运算符

赋值运算符 说明 示例
= 简单赋值 c = a + b
+= 加法赋值 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

逻辑运算符

比较运算符 说明 示例
and “与”。and 需要运算符两边都是True结果才为True True and True 为True
or “或”。or 只要运算符两边任意一个为True,结果就是True True or False 为True
not “非”。非真为假,非假为真 not True 为Falseb “非”。非真为假,非假为真 not True 为False
2 < 4 or 3 > 9 = True # 总是从左到右计算,一但能够决定表达式最终的值,将立刻停止计算并返回

位运算符

位运算符 说明 示例
& 按位与
| 按位或
^ 按位异或
~ 按位取反
>> 按位右移
<< 按位左移
很少用到了解下就好

其他运算符

赋值运算符

=:把右边赋值给左边,如 a = 2

a += b、a  -= b、a *= b、a /= b、a //= b、a %= b、a **= b:相等于a = a + b、a = a - b...

成员运算符:

in 和 not in:一个元素是否存在于一组元素中。

身份运算符:

is 和 not is:两者是否是指向同一个内存对象

>>> m = 20 
>>> n = 20
>>> m is n
True

运算符的优先级

## 算数运算符高于比较运算符
>>> 2 * 3 > 1 + 2 
True 

## 比较运算符的优先级高于逻辑运算符
>>> (2 * 3 > 1 + 2) and True 
True 

## 拿不准的时候加括号
((2 * 3 > 1 + 2)) and True
True 

位运算符

# 0011 1100
>>> bin(60)
'0b111100'

# 0000 1100
>>> bin(12)
'0b1100'

# 按位与
>>> 60 & 12
12 
#60的二进制与12的二进制:
0011 1100 0000 1100
0000 1100

# 按位或
>>> 60 | 12
60 
0011 1100 0000 1100
0011 1100

# 按位异或 
>>> 60 ^ 12
48 
0011 1100 0000 1100
0011 0000

>>> int('0b110000',2) = 48

# 按位取反
>>> ~60 = -61
0011 1100 1100 1100

>>> int('0b11001100', 2)
204

>>> int('0b1001100', 2)
76

>>> 60 >> 2
15

>>> 60 << 2
240
posted @ 2020-11-15 21:02  一墨无辰  阅读(111)  评论(0)    收藏  举报