繁体   English   中英

python集可以包含的值数量是否有限制?

[英]Is there a limit to the number of values that a python set can contain?

我正在尝试使用python集作为mysql表中id的过滤器。 python集存储所有要过滤的id(现在大约有3万个),这个数字会随着时间的推移而缓慢增长,我担心python集的最大容量。 它可以包含的元素数量是否有限制?

最大的限制是计算机上的内存量。 尝试行:

s = set(xrange(10000000))

这将创建一组长度为1000万的长度,比您作为示例给出的30,000长得多。 在我的计算机(具有4GB内存的Macbook Air)上,此操作仅需几秒钟。 无论您使用哪种系统,都可能会受到同样的限制。

当然,绝对有一个上限,并且在很久之前,由于冲突的数量以及必要的内存交换,您的设置将开始变慢。 因此,重要的是这个集合将变得多大。 如果要处理超过一千万个项目,则可能要考虑使用数据库。

我不知道集合中的项目数量是否有任意限制。 该限制很可能与可用内存有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM