Pythonでは、変数のメモリサイズを確認するためにいくつかの方法があります。これは、プログラムのパフォーマンスを最適化するために重要な情報を提供します。以下に、Pythonで変数のメモリサイズを確認する主な方法を示します。
__sizeof__()
メソッドを使用する
Pythonのオブジェクトは __sizeof__()
メソッドを持っています。このメソッドを呼び出すと、そのオブジェクトのメモリサイズをバイト単位で取得できます。
i = 1
print(f'{type(i)}: {i.__sizeof__()}') # <class 'int'>: 28
f = 1.0
print(f'{type(f)}: {f.__sizeof__()}') # <class 'float'>: 24
s = 'abc'
print(f'{type(s)}: {s.__sizeof__()}') # <class 'str'>: 52
l = [1, 2, 3]
print(f'{type(l)}: {l.__sizeof__()}') # <class 'list'>: 104
t = (1, 2, 3)
print(f'{type(t)}: {t.__sizeof__()}') # <class 'tuple'>: 48
sys.getsizeof()
関数を使用する
sys
モジュールの getsizeof()
関数を使うことでもオブジェクトのメモリサイズをバイト単位で確認することができます。
import sys
i = 1
print(f'{type(i)}: {sys.getsizeof(i)}') # <class 'int'>: 28
f = 1.0
print(f'{type(f)}: {sys.getsizeof(f)}') # <class 'float'>: 24
s = 'abc'
print(f'{type(s)}: {sys.getsizeof(s)}') # <class 'str'>: 52
l = [1, 2, 3]
print(f'{type(l)}: {sys.getsizeof(l)}') # <class 'list'>: 120
t = (1, 2, 3)
print(f'{type(t)}: {sys.getsizeof(t)}') # <class 'tuple'>: 64
これらの方法を使用することで、Pythonの変数がどの程度のメモリを消費しているかを確認することができます。これは、メモリ管理とパフォーマンス最適化に役立つ情報です。.