使用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。
