溫馨提示×

如何結合其他Python模塊使用sizeof函數

小樊
92
2024-08-27 12:35:18
欄目: 編程語言

sys.getsizeof() 是 Python 的一個內置函數,用于計算對象在內存中所占的字節大小

  1. numpy:計算 NumPy 數組的內存占用情況。
import sys
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print("Size of the NumPy array:", sys.getsizeof(arr))
  1. pandas:計算 Pandas DataFrame 或 Series 的內存占用情況。
import sys
import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6]}
df = pd.DataFrame(data)
print("Size of the Pandas DataFrame:", sys.getsizeof(df))
  1. matplotlib:計算 Matplotlib 圖形對象的內存占用情況。
import sys
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)
fig, ax = plt.subplots()
ax.plot(x, y)
print("Size of the Matplotlib figure object:", sys.getsizeof(fig))

需要注意的是,sys.getsizeof() 只會返回對象本身的大小,而不會考慮到對象內部可能引用的其他對象。因此,如果您想要計算一個復雜對象(如包含多個子對象的列表或字典)的整體內存占用情況,可以使用 pympler.asizeof 函數。首先安裝 pympler 庫:

pip install pympler

然后使用 asizeof 函數計算對象的整體內存占用情況:

from pympler import asizeof
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print("Total size of the NumPy array:", asizeof.asizeof(arr))

這將給出 NumPy 數組及其所有子對象的總內存占用情況。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女