我的所有密钥都是字符串,但我正在考虑使用非+
,:
,_
等非字母数字字符作为密钥的一部分。
使用它们有任何影响(或任何其他)影响吗?
答案 0 :(得分:4)
不,python dicts在密钥字符串中使用的字符不会有任何区别。
优化处理字符串而不是任意键对象,但如果您只使用 字符串值键,则不会看到使用键之间的任何区别并使用非字母数字字符。
仅字符串代码路径是对python dicts最常见用例的优化:名称空间和函数定义。这是dict的默认模式;只要你在其中存储一个非字符串键,就会切换查找方法,并且你手上会有一个微不足道的慢速字典。这在大多数Python应用程序中都无关紧要。