Tag: 哈希值

为什么我不能在python中使用列表作为字典键?

我有点困惑什么可以/不能用作python字典的关键。 dicked = {} dicked[None] = 'foo' # None ok dicked[(1,3)] = 'baz' # tuple ok import sys dicked[sys] = 'bar' # wow, even a module is ok ! dicked[(1,[3])] = 'qux' # oops, not allowed 所以一个元组是一个不可变的types,但如果我隐藏一个列表里面,那么它不能成为一个键..我不能像在一个模块内轻松隐藏列表? 我有一个模糊的想法,认为关键必须是“可排除的”,但我只是承认我对技术细节的无知。 我不知道这里发生了什么事。 如果你试图使用列表作为关键字,将散列称为内存位置,会出现什么问题?