我在关于 Python 的 Visual Studio 上工作。我有一个十六进制输入,如下所示:
0110
我将此十六进制数字转换为二进制,它看起来像:
00000001 0001000
过了一会儿,我想创建一个动态数组以将这些值保存在数组中并根据给定的输入更改大小,例如它可以是01100c
并且数组大小将增加到 3。所以,我使用以下代码:
dynamic_arraylist = [ ]
print("Enter a hex for converting binary");
hexdec = input("Enter any number in Hexadecimal form: ");
bin_value = bin(int(hexdec,16))[2:]
bin_value = (8 - (len(bin_value)% 8)) * '0' + bin_value
bytes = [bin_value[i:i+8] for i in range(0, len(bin_value), 8)]
' '.join(bytes)
number_length = len(' '.join(bytes))
elements = ' '.join(bytes)
for i in range(number_length):
data = int(elements)
dynamic_arraylist.append(data)
但是,由于data = int(elements)
这行代码,我得到一个错误,它可能不理解我的代码,并且它给出了一个错误:
ValueError("invalid literal for int() with base 10
有没有办法解决这个问题?