2017-10-10 16 views
0

sys.getsizeof()は異なるサイズを返します。たとえば、マシン1では sys.getsizeof('h')22を返しますが、マシン2では38を返します。sys.getsizeof()は異なるマシンと同じPythonバージョンで異なるサイズの値を返します

なぜマシン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

これはリンク先の質問の正確な_duplicate_です。一方の側に32ビット、もう一方の側に64ビットがありますが、これはすでに質問&回答でカバーされています。 –

+0

Ohhhhh私はアーチを見ていない。ありがとう – mwweb

答えて

1

getsizeof()/その変数を格納するために使用されるメモリのバイトを返しますオブジェクト。お使いのOSはアーキテクチャーx32とx64が異なるため、メモリーを別々に割り当てます。 詳細はこちらをご覧ください: https://forums.fedoraforum.org/showthread.php?p=1007393

関連する問題