3

一个字节的数据可以表示从o到255的值。但是,当我在python中声明一个字节对象并给它一个小于255的整数时,大小仍然很大。

>>a=b'9'
>>sys.getsizeof(a)
>>18
>>a=b'19'
>>sys.getsizeof(a)
>>19
>>a=b'019'
>>sys.getsizeof(a)
>>20

此数据需要通过树莓派的接线 pi 库发送到 SPI 设备。由库包装在 python 中的原始 C 函数将 char 数组作为输入,它是完美的字节大小。但是,在 python 中,该函数将 ab''作为其参数。'Hello World!\n'如果表示为 char 数组,则消息为 13 个字节。在 python 中声明字符串并对其进行编码会str.encode()给出一个大小为 30 字节的对象。

>>s ='Hello World!\n'
>>s=s.encode()
>>sys.getsizeof(s)
>>30

我该如何解决这个问题,使“1”代表数字“1”并且大小为一个字节(表示为 00000001 位),并且该字符串Hello world!\n实际上是一个 13 个字节的数组?

4

0 回答 0