python 中 & (按位与) 和 | (按位或)

逃离我推掉我的手 2023-01-17 09:16 185阅读 0赞

python 中 & (按位与) 和 | (按位或) 是把 2个数据转为二进制然后在做相应的计算

下面详细说下

  1. a = 10 # 10的二进制为1010
  2. b = 18 # 18的二进制为10010
  3. """
  4. 按位与运算符:
  5. & : 如果两个相应位都为1,则该位的结果为1,否则为0
  6. 01010
  7. 10010
  8. 计算的结果为:
  9. 00010
  10. 把二进制00010转10进制结果为2,所以下面的打印结果应该为2
  11. """
  12. print(a & b) # 打印结果为2
  13. """
  14. 按位或运算符:
  15. | : 只要对应的二个二进位有一个为1时,结果位就为1
  16. 01010
  17. 10010
  18. 计算的结果为:
  19. 11010
  20. 把二进制11010转10进制结果为26,所以下面的打印结果应该为26
  21. """
  22. print(a | b) # 打印结果为26
  23. """
  24. 按位异或运算符:
  25. ^ : 当两对应的二进位相异时,结果为1
  26. 01010
  27. 10010
  28. 计算的结果为:
  29. 11000
  30. 把二进制11000转10进制结果为24,所以下面的打印结果应该为24
  31. """
  32. print(a ^ b) # 打印结果为24
  33. """
  34. 按位取反运算符:
  35. ~ : 对数据的每个二进制位取反,即把1变为0,把0变为1
  36. 01010
  37. 计算的结果为:
  38. 10101
  39. 把二进制10101转10进制结果为-11,所以下面的打印结果应该为-11
  40. """
  41. print(~a) # 打印结果为-11

发表评论

表情:
评论列表 (有 0 条评论,185人围观)

还没有评论,来说两句吧...

相关阅读

    相关 、异

    按位与运算符(&) 参加运算的两个数,按二进制位进行“与”运算。 运算规则:只有两个数的二进制同时为1,结果才为1,否则为0。(负数按补码形式参加按位与运算) 即 0