python运算符

179 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

  • 算术运算符 操作符 | 名称 | 示例 | | :--: | :-----: | :------: | | + | 加 | 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)
notnot (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。

欢迎大家讨论!