"""已知a=[0 1 2 3 4 5 6 7],
a中的数用二进制表示分别a1=[000 001 010 011 100 101 110 111],
如果将上面的二进制数每个数从右往左看是b1=[000 100 010 110 001 101 011 111],
对应的十进制数是b=[0 4 2 6 1 5 3 7]。请编程实现将a变成b输出。
"""
a = [0, 1, 2, 3, 4, 5, 6, 7]
a1 = []
for i in a:
if len(bin(i)) == 3:
num = bin(i).replace("0b", "00")
elif len(bin(i)) == 4:
num = bin(i).replace("0b", "0")
else:
num = bin(i).replace("0b", "")
a1.append(num[::-1])
b = []
for i in a1:
nun = int(i, 2)
b.append(nun)
print(b)
关于二进制转换的题目
于 2022-10-30 01:41:03 首次发布