python - 为什么集合比 python 中的列表大?

标签 python list set

为什么 Python 中集合的大小明显大于具有相同元素的列表的大小?

a = set(range(10000))
b = list(range(10000))
print('set size = ', a.__sizeof__())
print('list size = ', b.__sizeof__())

输出:

set size = 524488
list size = 90088

最佳答案

set 使用的内存比 list 多,因为它存储所有元素的哈希表,因此可以快速检测重复条目等。这就是为什么每个集合成员都必须 be hashable .

关于python - 为什么集合比 python 中的列表大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3591727/

相关文章:

python - 覆盖Python setuptool的默认include_dirs和library_dirs?

python - 如何将按钮添加到 QTreeView 行

python - 在字符串中查找数字并将其递减

ios - 如何搜索包含集合中某些字符的字符串?

python - 为什么 python 集只包含 False 和 Zero?

python - 如何让命令 python filename.py 工作?

java - 找到列表中最接近的数字

c# - 使 DataGridView 在使用基类对象列表时显示派生类对象的属性

java - 从 Adapter 中的 Activity 调用方法

python - 如何制作一组列表