【问题标题】:Create a list of Hex value in python在python中创建一个十六进制值列表
【发布时间】:2016-03-29 14:48:15
【问题描述】:

我正在使用 pySerial 库从串行端口读取一些字节。

我需要将这些字节存储到一个列表中,但我会以十六进制格式存储数据,因为串行外围设备会向我发送特定的命令代码,例如 0x10、0x30、...

代码:

readByte = serialCOM.read(1)
print 'Read Payload byte:' + str(readByte)
packetPayload.append(readByte)

创建一个字符列表。

创建十六进制值列表的方法是什么?

谢谢!

【问题讨论】:

  • 你怎么知道你有一个字符列表?如果您正在打印它,python 只是在这样做时将这些字节解码为 ASCII 符号。

标签: python list hex pyserial


【解决方案1】:

在 Python 中,十六进制值只是整数的替代视图:

>>> 1 == 0x01
True
>>> 16 == 0x10
True

所以,这里有一个列表:

>>> print([0x10, 0x20])
[16, 32]

也可以使用int 函数从字符串中获取整数值:

>>> int('0x10', 16)  # here, the 16 is for the base, and 0x is optionnal
16

【讨论】:

  • 感谢您的帮助!
猜你喜欢
  • 2022-01-24
  • 2014-12-25
  • 1970-01-01
  • 1970-01-01
  • 2013-06-24
  • 1970-01-01
  • 2018-07-16
  • 1970-01-01
  • 2016-06-08
相关资源
最近更新 更多