如何将Python中的ASCII“”列表转换为十六进制

aiazj4mn  于 2024-01-05  发布在  Python
关注(0)|答案(2)|浏览(161)

我有一个ASCII“字节”列表,我需要转换为十六进制,然后通过串行端口发送。
例如,以下面的列表为例:

  1. list_to_send=['FE','FE','98','E0''07', 'D2', '00','FD"]

字符串
我想将每个字节转换为十六进制,例如第一个字节看起来像这样:

  1. b'\xfe'


我试过使用binasktop,但我认为我的用法是不正确的。

dffbzjpn

dffbzjpn1#

使用join()

  1. str="b'"
  2. for x in list_to_send:
  3. str=str+"\x"+x
  4. str=str+"'"

字符串
Sending hex over serial with python

vptzau2j

vptzau2j2#

如果您使用的是Python 3.5及更高版本,则使用此

  1. b'\xFE'.hex()

字符串
如果你想使用binasktop,那么:

  1. import binascii
  2. binascii.hexlify('FE'.encode('utf8'))


还有很多其他的方法.更多信息http://code.activestate.com/recipes/510399-byte-to-hex-and-hex-to-byte-string-conversion/

相关问题