这个问题可能看起来很傻,但我有一个
/tmp/size.txt
文件,它的内容如下:hello
当我执行以下命令时:os.path.getsize('/tmp/size.txt')
返回6
,但实际上文件大小不是6。
sys.getsizeof(b'hello')
# OR
sys.getsizeof(bytes(bytearray('hello')))
# OR
sys.getsizeof(bytes('hello'))
它返回 42
。
os.path.getsize
和 sys.getsizeof
之间有什么区别?
getsizeo()
返回对象查询在内存中的大小,包括结构开销。它通常比该对象中存储的数据更大。在您的情况下,使用len()
更有帮助。 - Klaus D.