为什么不能反转具有可变值的字典?

时间:2017-04-15 16:19:40

标签: python dictionary immutability mutable

我正在尝试这个简单的函数来切换给定字典的键和值:

def reverse_dict(d):
    return {y:x for x,y in d.items()}

如果值是不可变的,则工作正常,但是如果其中一个值是列表,则会出现以下错误:

TypeError: unhashable type: 'list'

为什么该函数的值必须是不可变的? 我对python的内存模型发生了什么感兴趣。

0 个答案:

没有答案