我有从硬件读取的库函数并返回
value = readregister(registerindex,numbytes)
其中value
是一个python列表。
如果numbytes
为2,则将在
value[0],value[1]
例如,它返回
[128,2]
以十六进制表示
[0x80,0x2]
如何将2个元素的列表值转换为十六进制python数? 所以如果组合它们我应该得到0x280即640
答案 0 :(得分:2)
无需转换为中间十六进制表示。你可以左移这些位来创建你想要的数字。
def get_number(values):
total = 0
for val in reversed(values):
total = (total << 8) + val
return total
答案 1 :(得分:0)
试试这个:
list=[128,2]
>>> b=[]
>>> for item in list:
... b.append(hex(item))
...
>>> b
>>>[0x80,0x2]