python - 当你从列表中删除一个项目时,为什么内存大小没有改变?

标签 python list python-2.7

是啊,为什么当你从列表中删除一个项目时大小没有改变?
有没有办法改变这种行为?

Python 2.7.5+ (default, Feb 27 2014, 19:37:08) 
>>> from sys import getsizeof
>>> x = [1, 2, 3, 4]
>>> print getsizeof(x), x
104 [1, 2, 3, 4]
>>> del x[3]
>>> print getsizeof(x), x
104 [1, 2, 3]

最佳答案

添加项目时它通常也不会改变。这是因为 list 的实现作为一种优化进行了过度分配。除了修改 Python 的源代码之外,没有办法改变这一点。

关于python - 当你从列表中删除一个项目时,为什么内存大小没有改变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22540094/

相关文章:

python - 如何检测 '--help' 何时被调用?

python - 如何使用 QName(python xml.etree.ElementTree?)

python - 遍历列表中不同长度的列表

c++ - 是否返回 std::list coSTLy?

python - 如何在django中查询具有manytomany字段指向它们的对象

python - TypeError:buf不是数字元组

python - 从 Python 的 Bokeh 到 Latex 的交互式 HTML 绘图

python - Numpy where() 创建与定义颜色不同的点

html - 如何在 HTML 中将有序列表编号居中

python - 在Python中随机查找列表中可用位置的高效算法