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