Ler*_*ich 2 python byte character-encoding
我有一个字符串,我使用str.encode('utf-8'). 之后我期望getsizeof()并len()返回相同的值,但似乎sys.getsizeof()总是返回更大的值。
然后我通过套接字将此二进制数据发送到 node.js 服务器并将它们存储在缓冲区中。双方Buffer.length并Buffer.byteLength返回相同的值,这等于len()在Python值。
我无法弄清楚那里发生了什么以及为什么Buffer.byteLength与sys.getsizeof().
我的数据并不总是字符串或可能有不同的编码,所以我想确保我知道以字节为单位的大小,而不是以字符为单位。
sys.getsizeof返回对象在内存中占用的大小。这包括 Python 处理对象所需的所有附加数据(例如,这首先是字符串而不是整数的信息)。
例如,看到它有一个空字符串的特定大小:
>>> sys.getsizeof('')
49
Run Code Online (Sandbox Code Playgroud)
甚至对于None:
>>> sys.getsizeof(None)
16
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2231 次 |
| 最近记录: |