Python如何为包含数据的数组分配和限制内存空间?

2024-04-25 12:36:14 发布

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

我需要传输一个字节数组,该数组包含大小不超过250字节的十六进制值,格式如下:

header|no of data structures|Data/Payload

现在,我已经阅读了多篇关于stackoverflow的文章,其中涉及到数组的内存分配,但我没有找到任何可行的解决方案。我需要将数据限制为250字节,因为我要将此数据发送到一个只读取250字节的设备。你知道吗

根据python,当前数组的大小是416字节。 http://imgur.com/OD9432L


Tags: of数据内存nodata字节格式文章
2条回答

你知道吗sys.getsizeof系统(newdata)返回数据结构的内部表示形式,并且依赖于系统。参考sys — System-specific parameters and functions

请尝试以下链接:How many bytes does a string have

声明一个大小为250的字节数组将生成一个等于250字节的字节数组,但是python的内存管理是以这样一种方式编程的,即它为整数或字符获得了比C或其他语言更多的空间,在C或其他语言中,您可以将整数指定为短或长。这个sys.getsizeof系统()命令,正如另一个用户指出的,表示数据结构的内部表示,而不是数据传输到另一个设备时的实际大小。你知道吗

data= bytearray(b'\x00'*length)

字节数组的字节大小由长度决定。例如,如果需要发送n字节的数据,那么长度将等于n。我通过检查接收端接收的数据的大小来验证它。你知道吗

相关问题 更多 >