【问题标题】:converting a decimal to hex decimal and then to bytes in python将十进制转换为十六进制十进制,然后转换为python中的字节
【发布时间】:2019-10-19 13:37:21
【问题描述】:

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

例如,如果我想将十进制数 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】:

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

     equipmentID = bytes(equipmentID_hex, 'utf-8')
    

    【讨论】:

      猜你喜欢
      • 2014-12-15
      • 1970-01-01
      • 1970-01-01
      • 2010-12-15
      • 2011-08-13
      • 2013-09-12
      • 2011-07-28
      • 1970-01-01
      相关资源
      最近更新 更多