TypeError: unhashable type: 'list'
时间: 2023-10-21 07:19:44 浏览: 116
这个错误通常发生在试图使用可变对象(比如列表)作为字典键或集合元素时。因为这些对象是可变的,它们的哈希值也可能发生变化,所以不能作为不可变对象使用。
以下是一个例子:
```python
my_list = [1, 2, 3]
my_dict = {my_list: 'value'}
```
在这个例子中,我们试图将一个列表作为字典的键,但是列表是可变的,所以不能作为键。如果我们运行这段代码,就会抛出“TypeError: unhashable type: 'list'”错误。
为了解决这个问题,可以将列表转换为元组,因为元组是不可变的,可以作为字典键或集合元素:
```python
my_list = [1, 2, 3]
my_dict = {tuple(my_list): 'value'}
```
这样就不会再出现“TypeError: unhashable type: 'list'”错误了。
阅读全文