[Numpy-tickets] [NumPy] #427: numpy.random.permutation cannot handle numpy integer scalars

NumPy numpy-tickets at scipy.net
Thu Jan 18 11:34:20 CST 2007

#427: numpy.random.permutation cannot handle numpy integer scalars
 Reporter:  rkern         |       Owner:  rkern        
     Type:  defect        |      Status:  new          
 Priority:  normal        |   Milestone:  1.0.2 Release
Component:  numpy.random  |     Version:  devel        
 Severity:  normal        |    Keywords:               
 As reported by Emanuele Olivetti:


 Look at this:

 import numpy
 print type(b)

 If I run it (Python 2.5, numpy 1.0.1 on a Linux box) I get:
 #> python /tmp/bug.py
 <type 'numpy.int32'>
 Traceback (most recent call last):
   File "/tmp/bug.py", line 5, in <module>
   File "mtrand.pyx", line 1227, in mtrand.RandomState.permutation
   File "mtrand.pyx", line 1211, in mtrand.RandomState.shuffle
 TypeError: len() of unsized object

 We are currently using {{{type(x) is int}}} to distinguish integers from
 arrays. We should test for {{{isinstance(x, int) or
 isinstance(numpy.integer)}}}, I believe. Possibly, we should also check
 for {{{hasattr(x, '__index__')}}}.

Ticket URL: <http://projects.scipy.org/scipy/numpy/ticket/427>
NumPy <http://projects.scipy.org/scipy/numpy>
The fundamental package needed for scientific computing with Python.

More information about the Numpy-tickets mailing list