字典的键有长度限制吗?
我在想,Python的字典键有没有长度限制。
为了更清楚,我不是在说字典的键的数量,而是每个键的长度。我打算根据动态值来构建我的字典(经过验证后),但我不确定在这种情况下是否需要考虑键的长度。
3 个回答
1
我知道其实没有限制,不过要考虑的是,钥匙越长,创建和访问这些钥匙所花的时间就会越长。
23
这里有一段示例代码:
from string import ascii_letters
from random import choice
def make_str(length):
return "".join(choice(ascii_letters) for i in range(length))
test_dict = {make_str(10000000): i for i in range(5)}
总结:Python可以很轻松地把一个包含一千万个字符的字符串当作字典的键。
24
在字典的键上没有什么限制。因为Python在数字类型上也可以处理任意大小的数字,所以你唯一会遇到的限制,无论是字符串还是其他类型的,都是可用内存的限制。你可以在这里查看关于Python 2中字符串最大长度的讨论。