python - &符号在打印功能中如何工作?

标签 python python-3.x

print(2&3) 打印 2。但想了解它是如何工作的?

print(2&3)

输出:2

print(7&8)

输出:0

print("a"&"b")

Exception: TypeError: unsupported operand type(s) for &: 'str' and 'str'

请有人帮助理解 & 在 python 中是如何工作的。

最佳答案

&bitwise and operator : 相同等级的每一位都被求值,如果两个位都为1,则该等级的结果是 1

等级是数字的二进制表示中从右到左的位置。

0010
^^^^
||||
|||+-- rank 0
||+--- rank 1
|+---- rank 2
+----- rank 3

2 & 3 可以翻译成二进制形式 0010 & 0011 :

  0010
& 0011
------
  0010

结果为 0010,十进制为 2

7 & 8 可以翻译成二进制形式 0111 & 1000 :

  0111
& 1000
------
  0000

结果是0000,十进制为0

关于python - &符号在打印功能中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56967302/

相关文章:

python - Exchangelib 库不下载 html 格式的电子邮件正文

Python One-hot 对文本中的每 2 个字符进行编码

python - CPython 中的字符串 'in' 运算符

python - 线程类型错误: 'module' object is not callable

python - 将二进制 64 位时间戳偏移量从 GPS 纪元转换为 python 日期时间对象

python - 编写创建并返回列表的函数

python - TypeError : unbound method __init__() . ...在重新打包后的单元测试期间

python - 在 Python 3 中提供目录

python - 多重继承元类冲突

python-3.x - matplotlib 中的 imhsow 显示与 opencv 不同