【发布时间】:2019-08-02 05:39:52
【问题描述】:
给定一个二进制字符串,将其移动给定的数量。
我无法理解为什么此代码会失败,我将字符串转换为二进制然后执行移位,但是对于
我认为我错误地转换了二进制字符串,但不知道该怎么做。
def insertt(num, numb, shift):
num = bin(int(num, 2) << shift)
numb = bin(int(numb))
print(bin(int(num, 2) | bin(int(numb, 2))
a = '10000000000'
b = '1001'
c = 2
insertt(a, b, c)
预期的结果只是转变。
谢谢
【问题讨论】:
-
bin返回一个字符串。我猜你想要bin(int(a, 2) << 2)(即在int上进行移位,然后转换为二进制字符串表示)。或者你想做一个循环移位?请显示一些示例输入/输出。 -
我正在尝试 1- 将字符串转换为二进制数,2 对其进行逻辑左移(非循环)