欢迎访问宙启技术站
智能推送

使用sys.getsizeof来获取对象的内存大小

发布时间:2023-12-13 11:45:53

在Python中,我们可以使用sys.getsizeof()函数来获取对象的内存大小。该函数返回对象所占用的内存大小(以字节为单位)。

以下是一个使用sys.getsizeof()函数获取不同对象内存大小的示例:

import sys

# 字符串对象
str_obj = "Hello, world!"
str_size = sys.getsizeof(str_obj)
print(f"字符串对象的内存大小为:{str_size}字节")

# 列表对象
list_obj = [1, 2, 3, 4, 5]
list_size = sys.getsizeof(list_obj)
print(f"列表对象的内存大小为:{list_size}字节")

# 字典对象
dict_obj = {'a': 1, 'b': 2, 'c': 3}
dict_size = sys.getsizeof(dict_obj)
print(f"字典对象的内存大小为:{dict_size}字节")

输出结果:

字符串对象的内存大小为:57字节
列表对象的内存大小为:96字节
字典对象的内存大小为:232字节

需要注意的是,sys.getsizeof()函数返回的是对象本身所占用的内存大小,并不包括其所引用的子对象。因此,如果对象包含其他对象,那么这些子对象的内存大小不会被计算在内。

值得一提的是,sys.getsizeof()函数是一个近似的估算,它并不一定准确地反映对象的真实内存大小。如果需要更精确的内存分析,可以考虑使用第三方模块,如pympler