我想知道Python是否对字典密钥的长度有限制。
为了澄清,我不是在谈论密钥的数量,而是在谈论每个密钥的长度。我将根据动态值(验证后)构建我的词典,但我不确定在这种情况下我是否应该考虑长度。
答案 0 :(得分:15)
关于字典键没有这样的限制。由于python在数值类型上也具有任意精度,因此您将遇到的唯一限制(字符串或其他限制)是可用内存的限制。你可以看到另一篇文章here,讨论python 2中的最大字符串长度。
答案 1 :(得分:15)
以下是一些示例代码:
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非常乐意使用一个1000万字符的字符串作为字典键。
答案 2 :(得分:1)
我知道没有限制,但考虑到密钥越长,创建/访问密钥的时间就越多