bytes('\xFF','utf8')返回

2024-05-23 18:25:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在做一个蓝牙LE项目,bluepy模块要求我以字节形式发送数据。。。 我想发送b'\xFF'所以我写:

bytes('\xff', 'utf-8')

返回:

^{pr2}$

再进一步调查,我发现所有超过127的uint-8数字都会发生这种情况。在

在寻找解决方案的过程中,我发现了许多建议使用的问答解包结构抱歉,没有运气。。。在

>>> type(struct.unpack('B', b'\xff')[0])
<class 'int'>

在解包结构返回一个整数类。 现在我发现:

b'\xFF'

实际上,生成包含所有1的字节。。。但是,我仍然希望使用bytes()和解包结构()向我解释。(Python3.5.3基于Raspberry Pi3)

非常感谢

KK公司


Tags: 模块项目le字节bytes数字结构发送数据
1条回答
网友
1楼 · 发布于 2024-05-23 18:25:45

对不起,我自己找到了解决问题的办法。。。在

n = 255
bytes([n])

会成功的。对方括号的逻辑有点困惑,但我们是在解决问题,让我们把理论留给真正的专家。:-)

相关问题 更多 >