首页 > 解决方案 > Python中不同数据类型的大小

问题描述

我一直在使用 Pycharm 执行 Python。我使用的是 3.8 版。我无法获得 Python 中数据类型的确切大小。我参考了以下链接:https ://www.geeksforgeeks.org/how-to-find-size-of-an-object-in-python/ 但是当我执行链接中提到的相同示例时,我没有得到类似的输出。

import sys 
a = sys.getsizeof(12) 
print(a)
b=sys.getsizeof('geeks') 
print(b)

我执行了上面的代码。a 的输出为 14,b 的输出为 30。但根据链接,它应该分别是 28 和 54。

如果有任何其他方法可以计算数据类型的大小,请提供帮助。

标签: pythonpycharm

解决方案


Python 3.8 中每种数据类型的大小如下:

int 的大小为:12

浮动大小为:16

str 的大小为:25

列表大小为:20

元组的大小是:12

字典大小为:120

套装大小:100

冻结集的大小为:100

无大小为:8

省略号的大小是:8

对象大小为:8

Lambda 的大小为:60

Function-ref 的大小为:60

异常大小为:32

通过使用脚本得到这个:

def f(): 返回

types = [int(0), float(0), str(), list(), tuple(), dict(), set(), frozenset(), None, ..., object(), lambda: None , f, 异常()]

名称 = [“int”、“float”、“str”、“list”、“tuple”、“dict”、“set”、“frozenset”、“None”、“Ellipsis”、“Object”、“Lambda” , "函数引用", "异常"]

尺寸=列表(地图(lambda x:x.sizeof(),类型))

for t, s in zip(names, sizes): print("Size of {} is: {}".format(t, s))


推荐阅读