nhashable type: 'numpy.ndarray' 怎么解决
时间: 2023-12-19 22:59:30 浏览: 90
将numpy.ndarray格式图像转化为_io.BufferedReader格式
这个错误通常是因为你尝试使用一个不可哈希的类型(例如`numpy.ndarray`)作为字典的键或集合的元素。要解决这个问题,你可以将`numpy.ndarray`转换为一个可哈希的类型,例如元组。
例如,如果你有一个字典,你可以这样转换`numpy.ndarray`:
```
my_dict = {}
my_array = numpy.array([1, 2, 3])
my_dict[tuple(my_array)] = 'some value'
```
如果你尝试将`numpy.ndarray`作为字典的键,你会得到`unhashable type: 'numpy.ndarray'`的错误。但是,将`numpy.ndarray`转换为元组后,就可以将其作为字典的键了。
类似地,如果你尝试将`numpy.ndarray`放入一个集合中,你也会得到相同的错误。你可以使用相同的方法将`numpy.ndarray`转换为元组,然后将元组添加到集合中。例如:
```
my_set = set()
my_array = numpy.array([1, 2, 3])
my_set.add(tuple(my_array))
```
阅读全文