繁体   English   中英

获取二进制数据的字节大小(python3.6)

[英]Get byte size of the binary data (python3.6)

我有一个字符串,我使用str.encode('utf-8')其转换为二进制表示。 之后我希望getsizeof()len()返回相同的值,但似乎sys.getsizeof()总是返回一个更大的值。

然后我通过套接字将此二进制数据发送到 node.js 服务器并将它们存储在缓冲区中。 Buffer.lengthBuffer.byteLength返回相同的值,它等于 Python 中的len()值。

我无法弄清楚那里发生了什么以及为什么Buffer.byteLengthsys.getsizeof()

我的数据并不总是字符串或可能有不同的编码,所以我想确保我知道以字节为单位的大小,而不是以字符为单位。

sys.getsizeof返回对象在内存中占用的大小。 这包括 Python 处理对象所需的所有附加数据(例如,这首先是字符串而不是整数的信息)。

例如,看到它有一个空字符串的特定大小:

>>> sys.getsizeof('')
49

甚至对于None

>>> sys.getsizeof(None)
16

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM