本文已参与「新人创作礼」活动,一起开启掘金创作之路。
- 算术运算符
操作符 | 名称 | 示例 |
| :--: | :-----: | :------: |
|
+| 加 |1 + 1| |-| 减 |1 - 1| |*| 乘 |1 * 2| |/| 除 |2 / 1| |//| 整除 |4 // 3| |%| 取余 |3 % 4| |**| 幂 |2 ** 3
举个栗子!
print(1 + 1)
# 2
print(1 - 1)
# 0
print(1 * 2)
# 2
print(2 / 1)
# 2
print(4 // 3)
# 1
print(3 % 4) # 3
print(2 ** 3) # 8
- 比较运算符
操作符 | 名称 | 示例 |
| :--: | :--: | :------: |
|
>| 大于 |2 > 1| |>=| 大于等于 |2 >= 4| |<| 小于 |1 < 2| |<=| 小于等于 |5 <= 2| |==| 等于 |3 == 4| |!=| 不等于 |3 != 5
举个栗子!
print(2 > 1)
# True
print(2 >= 4)
# False
print(1 < 2)
# True
print(5 <= 2)
# False
print(3 == 4)
# False
print(3 != 5)
# True
- 逻辑运算符
| 操作符 | 名称 | 示例 |
|---|---|---|
and | 与 | (3 > 2) and (3 < 5) |
or | 或 | (1 > 3) or (9 < 2) |
not | 非 | not (2 > 1) |
举个栗子
print((3 > 2) and (3 < 5))
# True
print((1 > 3) or (9 < 2))
# False
print(not (2 > 1))
# False
- 位运算符
| 操作符 | 名称 | 示例 |
|---|---|---|
~ | 按位取反 | ~4 |
& | 按位与 | 4 & 5 |
^ | 按位异或 | 4 ^ 5 |
<< | 左移 | 4 << 2 |
>> | 右移 | 4 >> 2 |
举个栗子
print(bin(4))
# 0b100
print(bin(5))
# 0b101
print(bin(~4), ~4)
# -0b101 -5
print(bin(4 & 5), 4 & 5)
# 0b100 4
print(bin(4 | 5), 4 | 5)
# 0b101 5
print(bin(4 ^ 5), 4 ^ 5)
# 0b1 1
print(bin(4 << 2), 4 << 2)
# 0b10000 16
print(bin(4 >> 2), 4 >> 2)
# 0b1 1
前期个大家看着肯定没问题,所以这里特别强调一下位运算,位运算不好理解。
以下面两个为栗
-
&- 按位与
- 如果两个相应的二进制位都为1,则该位的结果值为1,否则为0
-
举个栗子:1&2 =0
为什么呢?
以四位二进制数为栗
1是0001
2是0010
这四位中每一位对应每一位进行&运算, 0 & 0 = 0, 1 & 0 = 0 ,1 & 1= 1 所以最终为 0000 = 0
-
|- 按位或
- 两个相应的二进制位中只要有一个为1,该位的结果值为1
-
到这大家应该都清楚了, 再举个栗子:3|2 = 3
还是以四位二进制数为栗
3 是 0011
2 是 0010
这四位中每一位对应每一位进行|运算,0 | 0 = 0 ,1 | 0 = 1 ,1 | 1 = 1
所以最终为0011 也就是3。
欢迎大家讨论!