假设我有一个列表:
lst = [0, 1, 0, 0]
如何让python将此列表解释为二进制数0100,以便
2*(0100)
给我 01000
?我能想到的唯一方法是首先创建一个函数,将“二进制”元素转换为相应的整数(以 10 为底),然后使用 bin() 函数。
有没有更好的办法?
最佳答案
您可以使用 bitwise operators像这样:
>>> lst = [0, 1, 0, 0]
>>> bin(int(''.join(map(str, lst)), 2) << 1)
'0b1000'
关于python - 将列表的元素转换为二进制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38935169/