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

NoN*_*ame 1 python

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

fh = open(name, "r")
data = fh.read(10240)
print sys.getsizeof(data)
Run Code Online (Sandbox Code Playgroud)

输出:10277

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

Jon*_*art 6

为了得到data,使用len(data).假设你的文件足够大,len(data)将等于10240; 它的阅读量不会超过您的要求.

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