On Sep 4, 12:03 pm, Fredrik Lundh <[EMAIL PROTECTED]> wrote: > "Mars creature" wrote: > > I am trying to read a binary file created by the following matlab > > command: > > fid=fopen('a.bin','w','b'); fwrite(fid,a,'real*8'); fclose(fid);, and > > wondering how to do it in Python. I googled it but still get > > confused. > > 'b' in fopen is for 'big-endian', 'real*8' in fwrite is for 64bit > > float. > > f = open("a.bin", "rb") # read binary data > s = f.read() # read all bytes into a string > > import array, sys > > a = array.array("f", s) # "f" for float > if sys.byteorder != "big": > a.byteswap() > > </F>
Thanks Fredrik! I appreciate it! The only thing is that a = array.array("f", s) should be a = array.array("d", s) as the data is double precision. Thanks again! -- http://mail.python.org/mailman/listinfo/python-list