【发布时间】:2017-08-03 13:21:04
【问题描述】:
我正在尝试在 Python 中声明一个 32 位二进制数(1 和 0)的列表,在列表中选择一个数字,然后移位。
这就是我声明列表的方式,但我觉得这不正确。
myList = [11111011001101011001101011001100, 11111111000011001101001100111111,
11000000111100001111000011110000, 11111111000000001111011100001111]
现在我想从我的列表中选择一个数字并将其向左移动 4
例子:
num = myList[0]
example = num << 4
print("original", num)
print("shifted", example)
输出如下所示:
original 11111011001101011001101011001100
shifted 177776176017616176017616176017600
如何解决我的申报和转移问题?谢谢
【问题讨论】:
-
使用 0b11100011... 来声明二进制数。使用
bin(number)打印。 -
顺便说一句,Python 中不存在“二进制数”类型。或任何其他基地,就此而言。
0b11111111和0xFF和255都是完全相同的普通整数。
标签: python list python-3.x bit-shift 32-bit