[Numpy-discussion] [C++-sig] Overloading sqrt(5.5)*myvector
Wed Dec 26 23:04:29 CST 2007
Bruce Sherwood wrote:
> Thanks for the suggestion. It hadn't occurred to me to try to override
> numpy as you suggest. However, when I try the code shown below as the
> start of a test of this scheme, I get the following error:
> Traceback (most recent call last):
> File "C:\Documents and Settings\Bruce\My
> Documents\0VPythonWork\vectors.py", line 24, in <module>
> numpy.float64.__mul__ = new_mul
> TypeError: can't set attributes of built-in/extension type 'numpy.float64'
> I'm copying this to the numpy discussion list, as maybe someone there
> will see where to go starting from your suggestion.
Like most (or all) builtin-types, the numpy float scalars do not permit
replacing their methods from Python.
I'm not familiar with vpython's vector. If you can make it "not look like an
ndarray", then you should be able to just implement __rmul__ on vector.
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the Numpy-discussion