この質問は、私がこのコンテンツを/tmp/size.txt
を持って、愚かに見えるかもしれませんが、私が行うときなぜsys.getsizeofがos.path.getsizeと等しくないのですか?
hello
とos.path.getsize('/tmp/size.txt')
は6
を言うが、:
sys.getsizeof(b'hello')
# OR
sys.getsizeof(bytes(bytearray('hello')))
# OR
sys.getsizeof(bytes('hello'))
それは42
を返します。
os.path.getsize
とsys.getsizeof
の違いは何ですか?
'getsizeo()'は構造上のオーバーヘッドを含むメモリ内のオブジェクトクエリのサイズを返します。多くの場合、そのオブジェクトに格納されているデータよりも大きくなります。あなたのケースでは 'len()'がもっと役立つはずです。 –