在我的实验中,我有一个numpy对象的实例,我需要设置它的__hash__
方法。你知道吗
我尝试过各种方法(实际上似乎完全相同):
import numpy as np
x = np.array([1, 2, 3])
x.flags.writeable = False # set the array immutable
setattr(x, '__hash__', lambda self: 0) # doesn't work without self either
AttributeError: 'numpy.ndarray' object attribute '__hash__' is read-only
x.__hash__ = lambda self: 0
AttributeError: 'numpy.ndarray' object attribute '__hash__' is read-only
有没有办法强迫对象接受我的实现?这实际上是一个更广泛的问题:有没有一种方法可以将任何属性/方法分配给现有的对象(包括魔术方法等)?你知道吗
创建一个继承np的对象类?然后编写
__hash__
函数 我有点傻,但你觉得这样行吗?你知道吗相关问题 更多 >
编程相关推荐