python中的列表和字典是否有边界? 如果有,有什么限制?
答案 0 :(得分:6)
我认为,通过边界,你的意思是list
或dict
中的元素数量是否存在上限。 Python没有对它们定义任何限制,因此它们可以与计算机上可用的内存一样大。
答案 1 :(得分:3)
实际上,当前内部Python对象的哈希实现使用32位哈希 - 所以,在字典上接近2 ^ 32个元素的点(假设你有那么多的内存),你将开始有很多冲突,并将在字典使用中显着减慢。但这不会妨碍它的运作。
(Python devels正在考虑在未来版本中将此哈希值设为64位,因此这不再是一个问题。)
至于绝对限制,没有 - 限制因素是可用的系统内存。
答案 2 :(得分:1)
您拥有的内存量是限制。