Marlin Rowley wrote:
All:
I'm getting different floating point values when I use numpy vs. unpack().
frgba = numpy.frombuffer(<string of bytes>, dtype=float32)
buffer = unpack("!f", byte)
frgba[0] != buffer[0]
why? This is forcing me use the unpack() function since it's giving me
the correct values. What am I doing wrong?
Endianness, perhaps? '!' specifies big-endian data (an alias for '>'). Most
likely, you are on a little-endian platform. All of the dtypes in numpy default
to the native-endianness unless specified. If you want to read big-endian data
using numpy, do this:
frgba = numpy.frombuffer(<string of bytes>, dtype='>f')
If you have any more problems with numpy, please join us on the numpy mailing
list. When reporting problems, please try to provide a small but complete
snippet of self-contained code, the output that you got, and explain the output
that you expected to get. Thank you.
http://www.scipy.org/Mailing_Lists
--
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
--
http://mail.python.org/mailman/listinfo/python-list