Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我所有的键都是字符串,但我正在考虑使用非字母数字字符,例如+、:、_等作为键的一部分。
+
:
_
使用它们是否有任何性能(或任何其他)影响?
不,python dicts 不会看到您在密钥字符串中使用的字符有任何区别。
它们经过优化以仅处理字符串而不是任意键对象,但如果您只对键使用字符串值,您将不会看到使用不带和不带非字母数字字符的键之间有任何区别。
纯字符串代码路径是对 python dicts 最常见用例的优化:命名空间和函数定义。这是 dict 的默认模式;一旦你在其中存储了一个非字符串键,查找方法就会切换,你手上就会有一个很小的速度较慢的字典。不过,这在大多数 Python 应用程序中并不重要。