doucmentation bug or bug? p or q for numerical arrays

Peter Otten __peter__ at web.de
Thu Jul 29 07:41:37 CEST 2004


Alan G Isaac wrote:

> from Numeric import *
> p = array([1, 1, 0, 0])
> q = array([1, 0, 1, 0])
> print logical_or(p,q)    #expected result
> print (p or q)               #prints p
> 
> This might be expected, except for the documentation:
>  http://numpy.sourceforge.net/numdoc/HTML/numdoc.htm#pgfId-36127
> 
> "Universal Functions, or ufunc s. The operators which invoke them when
> applied to arrays are indicated in parentheses."
> 
> And then numarray has the same documentation (in the manual)
> but chokes altogether on the use of 'or'.
> 
> There is a like problem with 'and'.
> 
> Am I misreading something?
> Are there actually operators for these functions?

Unlike '&', '|' and '~', the logical operators 'and' and 'or' cannot be
overridden, 'not' not in a useful manner (__nonzero__() must return an
integer). The documentation is probably wrong.

Peter




More information about the Python-list mailing list