Python:为什么我从文件中读取的大小与 sys.getsizeof() 不同?

标签 python

我有一个大小为 10240 字节的文件。这是我获取文件大小的脚本:

fh = open(name, "r")
data = fh.read(10240)
print sys.getsizeof(data)

Output: 10277

我正在从文件中读取 10240 字节,但当我打印大小时,我得到 10277。如何确保我读取的字节数不超过 10240 字节?我应该向我的消费者发送 10240 个字节,但它看起来发送的更多。

最佳答案

要获取 data长度,请使用 len(data)。假设您的文件足够大,len(data) 将等于 10240;它不会阅读超过您要求的内容。

sys.getsizeof()返回内存中 Python 对象的总大小,包括运行时使用的任何额外开销。它在大多数 Python 应用程序中通常没有用。

关于Python:为什么我从文件中读取的大小与 sys.getsizeof() 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42405195/

相关文章:

python - 在 Pandas 中将两列设置为元组索引

python - Python读取HTML表单提交的每一行

python - 反向代理后面的非标准端口上的 SAML2 服务提供商

python - 查找最长的连续子数组(未排序)-Python

Android使用buildozer编译报错

python - 如何在 kwargs 中使用 UUID 字段?

python - 在python中组合行(删除行号)以从文本文件中创建一个段落

python - 子进程没有输出任何内容

python - 如果输入数据是列表类型,如何绘制条形图?

Python - 在类函数中更新类自字典