sys.getsizeof()在不同的机器和相同的python版本上返回不同的大小值

时间:2017-10-10 13:57:56

标签: python

sys.getsizeof()会返回不同的大小。例如在机器1中 sys.getsizeof('h')会返回22,但在机器2中会返回38

为什么机器2是+16

机器1:

Python 2.7.12 (default, Nov 19 2016, 06:48:10) [GCC 5.4.0 20160609] on linux2

lsb_release -r Release: 16.04

uname -a Linux linux1 4.4.0-96-generic #119-Ubuntu SMP Tue Sep 12 14:58:51 UTC 2017 i686 i686 i686 GNU/Linux

相同的python,相同的gcc。除了内核版本之外,机器2与机器1相同,它是不同的:

Linux linux2 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:10:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

问题与此类似:python sys.getsizeof method returning different sizes on different versions of python

1 个答案:

答案 0 :(得分:1)

getsizeof()返回用于存储该变量/对象的内存字节。由于您的操作系统具有不同的体系结构x32和x64,因此它们以不同方式分配内存。 你可以在这里找到更多: https://forums.fedoraforum.org/showthread.php?p=1007393