[pypy-issue] [issue1589] numpy: Structured arrays give odd behavior
Isaac Freeman
tracker at bugs.pypy.org
Sat Aug 24 04:59:49 CEST 2013
New submission from Isaac Freeman <memotype at gmail.com>:
I'm running the latest nightly as of last night. Trying to construct structured
arrays from a list gives add characters and values in the resulting array:
numpypy:
In [76]: c = numpy.array([[(1,2,'a'),(3,4,'b')],[(5,6,'c'),(7,8,'d')]],
dtype=[('bg', 'i8'), ('fg', 'i8'), ('char', 'S1')] )
In [77]: c
Out[77]:
'), (3, 4, '')],
[(5, 6, ''), (7, 8, '')]],
dtype=void136)
(There are some non-printable characters in the output.)
Compared to numpy in cpython:
>>> c = numpy.array([[(1,2,'a'),(3,4,'b')],[(5,6,'c'),(7,8,'d')]], dtype=[('bg',
'i8'), ('fg', 'i8'), ('char', 'S1')])
>>> c
array([[(1, 2, 'a'), (3, 4, 'b')],
[(5, 6, 'c'), (7, 8, 'd')]],
dtype=[('bg', '<i8'), ('fg', '<i8'), ('char', 'S1')])
This also affects array assignment. In numpypy:
In [83]: c = numpy.zeros((2,2,2), dtype=[('bg', 'i8'), ('fg', 'i8'), ('char', '\
S1')])
In [84]: c
Out[84]:
array([[[(0, 0, ''), (0, 0, '')],
[(0, 0, ''), (0, 0, '')]],
[[(0, 0, ''), (0, 0, '')],
[(0, 0, ''), (0, 0, '')]]],
dtype=void136)
In [85]: c[0,0] = (1, 2, 'a')
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-85-158a9c3d29f8> in <module>()
----> 1 c[0,0] = (1, 2, 'a')
ValueError: invalid literal for int() with base 10: 'a'
In [86]:
And in numpy/cpython:
>>> c = numpy.zeros((2,2,2), dtype=[('bg', 'i8'), ('fg', 'i8'), ('char', '\
... S1')])
>>> c
array([[[(0, 0, ''), (0, 0, '')],
[(0, 0, ''), (0, 0, '')]],
[[(0, 0, ''), (0, 0, '')],
[(0, 0, ''), (0, 0, '')]]],
dtype=[('bg', '<i8'), ('fg', '<i8'), ('char', 'S1')])
>>> c[0,0] = (1, 2, 'a')
>>> c[0,0]
array([(1, 2, 'a'), (1, 2, 'a')],
dtype=[('bg', '<i8'), ('fg', '<i8'), ('char', 'S1')])
>>>
----------
messages: 6091
nosy: memotype, pypy-issue
priority: bug
status: unread
title: numpy: Structured arrays give odd behavior
________________________________________
PyPy bug tracker <tracker at bugs.pypy.org>
<https://bugs.pypy.org/issue1589>
________________________________________
More information about the pypy-issue
mailing list