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

如何使用Python中的Sized()函数获取对象的大小

发布时间:2024-01-06 09:07:03

在Python中,我们可以使用内置函数sizeof()来获取对象的大小。sys.getsizeof()函数用于返回一个对象的大小(以字节为单位)。

以下是一个例子,展示如何使用sys.getsizeof()函数来获取不同对象的大小:

import sys

string = "Hello, world!"
list_ = [1, 2, 3, 4, 5]
dict_ = {'key1': 'value1', 'key2': 'value2'}
tuple_ = (1, 2, 3, 4, 5)
set_ = {1, 2, 3, 4, 5}

string_size = sys.getsizeof(string)
list_size = sys.getsizeof(list_)
dict_size = sys.getsizeof(dict_)
tuple_size = sys.getsizeof(tuple_)
set_size = sys.getsizeof(set_)

print(f"Size of string: {string_size} bytes")
print(f"Size of list: {list_size} bytes")
print(f"Size of dictionary: {dict_size} bytes")
print(f"Size of tuple: {tuple_size} bytes")
print(f"Size of set: {set_size} bytes")

输出将是:

Size of string: 58 bytes
Size of list: 112 bytes
Size of dictionary: 240 bytes
Size of tuple: 96 bytes
Size of set: 728 bytes

注意,sys.getsizeof()函数返回的大小可能只是对象本身的大小,并不包括其引用的其他对象的大小。例如,对于列表和字典,它们的大小不包括其元素的大小,只包括它们内部的指针和其他开销。因此,从输出的结果可以看出,列表和字典的大小要大于它们实际存储的元素的大小。

另外,值得一提的是,sys.getsizeof()函数的返回值可能包含对象的内部未使用的空间,并且在不同的Python实现中可能会有所不同。因此,这个函数的返回值只应该用作比较不同对象之间的相对大小,而不是精确的对象大小。