将十进制转换为十六进制十进制,然后转换为python中的字节

问题描述 投票:0回答:1

我正在尝试将十进制数字转换为十六进制十进制,然后转换为字节。

例如,如果我想将十进制数字5转换为字节。我用

def decimal_to_hexadecimal(dec): 
    decimal = int(dec) 
    return hex(decimal)

id = decimal_to_hexadecimal(5)

这将以十六进制表示5,即0x5

现在我将其转换为字节使用

id_bytes = bytes([0x5])

这很好,但是我必须手动输入十六进制小数。所以当我尝试这个

equipmentID = int(equipmentID)
equipmentID_hex = hex(equipmentID)
equipmentID = bytes(equipmentID_hex)

给出错误

TypeError: string argument without an encoding

有人可以帮我这个忙。

谢谢

python arrays string hex byte
1个回答
0
投票

在该函数中,您未将十六进制数据转换为再见。如果需要转换为字节,则需要使用编码技术。

 equipmentID = bytes(equipmentID_hex, 'utf-8')
© www.soinside.com 2019 - 2024. All rights reserved.