在C中,我们可以找到的大小int,char等我想知道如何获得物体的大小就像一个字符串,整数,等在Python.
我使用的XML文件包含指定值大小的大小字段.我必须解析这个XML并进行编码.当我想更改特定字段的值时,我将检查该值的大小字段.在这里,我想比较一下我输入的新值是否与XML中的值相同.我需要检查新值的大小.在字符串的情况下,我可以说它的长度.但是在int,float等的情况下我很困惑.
我有一个腌菜。其大小为 9.3MB。
-rw-r--r-- 1 ankit ankit 9.3M Jan 7 17:43 agg_397127.pkl
Run Code Online (Sandbox Code Playgroud)
我使用 cPickle 将其加载到 python 中。我尝试使用 pympler asizeof 确定其大小。但是 asize of 和 sys.getsizeof 给出的大小存在相当大的差异
from pympler import asizeof
import cPickle as pickle
path = "agg_397127.pkl"
temp = pickle.load(open(path, 'rb'))
temp
{397127: RandomForestRegressor(bootstrap=True, criterion='band_predict',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_samples_leaf=1, min_samples_split=2,
min_weight_fraction_leaf=0.0, n_estimators=1000, n_jobs=1,
oob_score=False, random_state=0, verbose=0, warm_start=False)}
asizeof.asizeof(temp)
1328504
asizeof.flatsize(temp)
import sys
sys.getsizeof(temp)
280
Run Code Online (Sandbox Code Playgroud)
有人可以解释为什么会有这样的差异吗?