基本上,我已经将整数转换为二进制表示形式,然后将其以字符串格式存储。
我想循环旋转数字。
我应该如何进行?
我用过np.roll()
,但是它不起作用。
答案 0 :(得分:1)
您可以按如下所示创建新字符串以循环移位
bin_str = bin_str[-1] + bin_str[:-1]
如果那不好,您可以使用collections.deque
(具有rotate
方法)来产生循环移位效果
from collections import deque
bin_str = "{0:b}".format(10)
print (bin_str)
1010
d = deque(bin_str, maxlen=len(bin_str))
print (d)
# deque(['1', '0', '1', '0'], maxlen=4)
d.rotate()
print (d)
# deque(['0', '1', '0', '1'], maxlen=4)
答案 1 :(得分:0)
尝试使用负移 例如这样 打印(np.roll(a,-3))