假设我有A = 0b11110101
。
我想像这样的伪代码制作一个新的整数
B[0] = A[4]
B[1] = A[7]
B[2] = A[0]
B[3] = A[6]
B[4] = A[1]
B[5] = A[2]
B[6] = A[3]
B[7] = A[5]
我怎样才能做到这一点?
也许我可以先创建一个数组B,但是最后我需要一个整数/二进制。
更新#1
我做了这样的事情:
num=0
pc1_tidyHex = []
pc1_tidyHex.append([tidyHex[56], tidyHex[48], tidyHex[40], tidyHex[32], tidyHex[24], tidyHex[16], tidyHex[8]])
num = int(''.join(map(str, pc1_tidyHex)))
print(pc1_tidyHex)
print(num)
我得到这个错误:
Traceback (most recent call last):
File "F:\TUC Aux\python\budi.py", line 47, in <module>
num = int(''.join(map(str, pc1_tidyHex)))
ValueError: invalid literal for int() with base 10: "['0', '1', '1', '0', '1', '0', '0']"
最佳答案
完成array
后,您可以使用:
num = int(''.join(map(str, B)))
您将拥有您的整数。如果要将其作为字符串,请删除
int()