【发布时间】:2016-12-20 11:36:10
【问题描述】:
假设我有一个列表:
lst = [0, 1, 0, 0]
如何让 python 将此列表解释为二进制数 0100,以便2*(0100) 给我01000?
我能想到的唯一方法是首先创建一个函数,将“二进制”元素转换为相应的整数(以 10 为底),然后使用 bin() 函数..
有没有更好的办法?
【问题讨论】:
-
int已经是二进制表示。为了打印到屏幕上,文字及其打印表示转换为十进制。但是您可以对它们进行按位操作,因为底层表示是二进制的。如果您想使用二进制文字,请在您的解释器中尝试0b1000。现在试试 12 * 0b1000。只有当您想显示二进制表示时,您才需要显式使用bin()
标签: python python-3.x binary