在python中用一个字节表示一个数字?

时间:2016-07-26 17:06:07

标签: python-3.x binary raspberry-pi bytearray wiringpi

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

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

这些数据需要通过rasp-pi库的raspberry pi进入SPI设备。由库包装在python中的原始C函数作为输入,一个char数组,它们是完全字节大小的。但是,在python中,该函数以b''为参数。如果表示为char数组,则消息'Hello World!\n'为13个字节。在python中声明字符串并使用str.encode()对其进行编码会得到一个大小为30字节的对象。

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

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

0 个答案:

没有答案