如何获取列表所需的实际内存大小?

时间:2019-04-28 22:27:12

标签: python python-3.x memory

我有一个非常大的文件,大小可能有所不同。它具有以下格式的条目:nnnn,yyyy-mm-dd,xx.xxxx,其中,nnnn是整数,yyyy-mm-dd是年,月和日,而xx.xxxx是浮点数。 nnnn的长度可以从一位到大于9的长度变化,最重要的是,所有条目都必须保存在列表中的内存中。每个列表元素都是('nnnn','yyyy-mm-dd','xx.xxxx')形式的元组。我需要先验地知道我的内存可以处理多大的列表。

在将每行创建的元组追加到列表之后,是否有任何python工具可以提供此列表的实际内存大小(以字节为单位)?

请运行以下代码,显然sys.getsizeof()不会占用实际内存大小-至少在python 3.6.5中如此

import sys

tuple1 = ('1234','2019-04-27','23.4658')
tuple2 = ('1563','2019-04-27','19.2468')
klist1 = [tuple1]
klist2 = [tuple1,tuple2]
print (sys.getsizeof(klist1))
print (sys.getsizeof(klist2))

0 个答案:

没有答案
相关问题