Mark.Miller wrote: > Can someone explain this? I can't seem to coerce numpy into storing > large integer values. I'm sure that I'm just overlooking something > simple... > > > >>> import numpy > >>> a='1'*300 > >>> type(a) > <type 'str'> > >>> b=int(a) > >>> type(b) > <type 'long'> > >>> c=numpy.empty((2,2),long) > >>> c[:]=b > Traceback (most recent call last): > File "<pyshell#15>", line 1, in <module> > c[:]=b > OverflowError: long too big to convert > >>>
Use object arrays explicitly: c = numpy.empty((2, 2), dtype=object) Using dtype=long gets interpreted as requesting the largest available integer type (or maybe just int64, I'm not sure). Those aren't unbounded. -- Robert Kern "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 _______________________________________________ Numpy-discussion mailing list [email protected] http://projects.scipy.org/mailman/listinfo/numpy-discussion
