[Numpy-discussion] rank-0 arrays
Scott Gilbert
xscottg at yahoo.com
Fri Sep 13 10:17:09 EDT 2002
--- Todd Miller <jmiller at stsci.edu> wrote:
> Two other issues come up trying to implement the "rank-0 experiment":
>
> 1. What should be the behavior of subscripting a rank-0 array?
>
> a. Return the scalar value (what numarray does
> now. seems inconsistent)
>
If you think of it as "dereferencing" instead of "indexing", I think this
is most consistent. It takes 3 elements to dereference a rank-3 array, so
it should take 0 elements to dereference a rank-0 array.
>
> 2. What's a decent notation for .asScalar()?
>
> a. a[ <subscript_resulting_in_rank0> ][0] (what numarray
> does now)
> b. a[ <subscript_resulting_in_rank0> ]() (override
> __call__)
> c. a[ <subscript_resulting_in_rank0> ].asScalar()
>
> Any strong opinions?
>
Since subscripting a rank-3 array:
a[1, 2, 3]
is very much like
a[(1, 2, 3)]
The __getitem__ receives the tuple (1, 2, 3) in both cases. (Try it!)
So that would imply subscripting (dereferencing) a rank-0 array could be:
a[] could be represented by a[()]
It's just unfortunate that Python doesn't currently recognize the a[] as a
valid syntax.
Cheers,
-Scott
__________________________________________________
Do you Yahoo!?
Yahoo! News - Today's headlines
http://news.yahoo.com
More information about the NumPy-Discussion
mailing list